Re: Wondering whats wrong?

From: Date: Sat, 13 Jan 2001 16:25:54 +0000
Subject: Re: Wondering whats wrong?
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-34373@lists.php.net to get a copy of this message
This is a matter of figuring out why the variable isn't a valid file handle resource. To do so, find where it should be made such a resource (the line that says $fp = fsockopen...etc... is probably it), and add some error checking. I believe this function has its own way of returning what's wrong; check php.net/fsockopen and take a look at additional arguments... Then you must simply output the resulting error message (which is assumed to be resulting because the file handle is not being created). --Toby ----- Original Message ----- From: "K.Simon" <phpsoft@zabia.net> To: <php-general@lists.php.net> Sent: Saturday, January 13, 2001 11:07 AM Subject: [PHP] Wondering whats wrong? Hello, running the following script (exec.php) on telnet account i get this error: Warning: Supplied argument is not a valid file handler resource in exec.php on line 21 Can anybody tell me whats wrong with it? Normally it should fetch the newsgroups on my local news server and insert them into rows on a mysql database. This script is part of myPHPusenet-0.9.9. I hope the script was not too long. THE SCRIPT: ********************************************************* #!/usr/bin/php -q <? $start = gettimeofday(); include("conf.inc.php"); include("newsgroups.inc.php"); @mysql_connect($hostname, $username, $password) OR DIE ("Could not connect"); @mysql_select_db("$database") OR DIE ("Could not open database"); $i = 0; $j = 0; while($i < sizeof($groups) ) { $fp = fsockopen("$server", 119); set_socket_blocking($fp, true); $response = fgets($fp, 256); fputs("$fp", "GROUP $groups[$i]\n"); $gruppe = fgets($fp, 1024); $range = split(" ", $gruppe); $range_start = $range[2]; $range_end = $range[3]; $db_ng_name[$i] = ereg_replace("\.","_", $groups[$i]); $query1 = "UPDATE last SET last.last = '$range_end' WHERE newsgroup = '$db_ng_name[$i]'"; $query2 = "SELECT last FROM last WHERE (newsgroup LIKE '$db_ng_name[$i]')"; $runit2 = MYSQL_QUERY($query2); $result = @MYSQL_RESULT($runit2,0,last); IF (@MYSQL_NUMROWS($runit2) == 1) { $range_start = $result; while($range_start < $range_end) { system("parse.php $server $groups[$i] $range_start"); $range_start++; $j++; } } ELSE { PRINT "No new posts in $groups[$i]\n"; } $runit1 = MYSQL_QUERY($query1); $i++; } $tables = MYSQL_LIST_TABLES($database); $k = 0; WHILE ($k < MYSQL_NUM_ROWS ($tables)) { $area_names[$k] = MYSQL_TABLENAME ($tables, $k); $query = "SELECT count(*) AS total_nr FROM $area_names[$k]"; $q_string = @MYSQL_QUERY($query); $fundet = @MYSQL_RESULT($q_string,0,total_nr); $total += $fundet; $k++; } $date = date("d"); $month = date("F"); $shortmonth = date("M"); $year = date("Y"); $hour = date("H"); $min = date("i"); $sec = date("s"); $end = gettimeofday(); $exec_time = number_format( (($end["sec"] + $end["usec"]/1000000) - ($start["sec"] + $start["usec"]/1000000)), 3); $contents = "Hi!\n\nThe newsparser was run $date $month $year at $hour:$min:$sec, and it inserted $j posts in the\ndatabasen, there are now $total posts in the \n\nDatabase the update took $exec_time seconds.\n\n-- \n\nYours Truly.\n\tmyPHP usenet"; mail("$email", "$subject", "$contents", "From:$USER@$HOSTNAME\nReply-To: martin@nitro.dk"); $fp = fopen($logname, "a") or die ("Could not open logfile"); $logmess = "$shortmonth $date $hour:$min:$sec the newsparser inserted $j posts, there are now $total total\n"; $write = fputs($fp, $logmess); fclose($fp); ?> -- PHP General Mailing List (http://www.php.net/) To unsubscribe, e-mail: php-general-unsubscribe@lists.php.net For additional commands, e-mail: php-general-help@lists.php.net To contact the list administrators, e-mail: php-list-admin@lists.php.net

« previous php.general (#34373) next »