Hi,

I apologize for all the emails on this, but I'm truly at a loss here and
really need some input as to what I need to do to get this working.

I have a FORM with two drop down menus and have the entries saved in two
separate .inc files i.e:

<Option Value="3">Alfredsson
<Option Value="39">Arnott
<Option Value="150">Aucoin
<Option Value="143">Audette
Etc...

<Option Value="67">Bates
<Option Value="36">Battaglia
<Option Value="152">Berard
<Option Value="6">Bertuzzi
Etc....

The user enters the webpage and chooses a player from list one and list
two. This gets submitted to my PHP script which reads in these files and
manipulates them accordingly and re-saves them. At the end of the PHP
script I include the input file again - include("injury-input.php") -
which should now have the updated drop down menus.

This seems to work the first time you open up a browser and go to the
input page (although I can't really even be sure of that now). If you
try to do it again using a different set of players, it doesn't work. I
usually end up with two empty files. So it appears it is opening the
file the second time ok, but is not writing to it.

I have no idea what to do with this. 

Here is the script:

function writeplayer($from_row, $to_row) {

        include("trade-errors.inc");

        $filename = "players.inc";

        $fd = fopen ($filename, "r");
        $content = "";
        while (!feof ($fd)) {
           $content = fgets($fd);
           if (preg_match ("/".$to_row['player']."/", $content)) { }
           else { $list[] = $content; }
        }
        fclose ($fd);
        
        $num = count($list);
        $list[$num] = "\r\n<Option
Value=\"".$from_row['idp']."\">".$from_row['player'];
        $num = count($list);

        $list = preg_replace('/(<.*?>)(.*)/', '$2$1', $list);
        sort ($list);
        $list = preg_replace('/(.*?)(<.*>)/', '$2$1', $list);
   
        if (is_writable($filename)) {

       if (!$fp = fopen($filename, 'w')) {
                        $injury_errors = $playeropens;
                        include("injury-input.php");
                        exit;
       }
           for($i=0; $i < $num; $i++) {
               if (!fwrite($fp, $list[$i])) {
                        $injury_errors = $playerwrite;
                                include("injury-input.php");
                                exit;
           }       
           }
       fclose($fp);
        }
        else { 
                $injury_errors = $notwritable;
                include("injury-input.php");
                exit;   
        }

unset($list); unset($content); unset($num); unset($filename);
unset($fd); unset($fp);
writereserve($from_row, $to_row);       
$injury_errors = $updated;
return($injury_errors);

}

function writereserve($from_row, $to_row) {

        include("trade-errors.inc");

        $filename = "players-reserve.inc";

        $fd = fopen ($filename, "r");
        $content = "";
        while (!feof ($fd)) {
           $content = fgets($fd);
           if (preg_match ("/".$from_row['player']."/", $content)) { }
           else { $list[] = $content; }
        }
        fclose ($fd);
        
        $num = count($list);
  
        if (is_writable($filename)) {

       if (!$fp = fopen($filename, 'w')) {
                        $injury_errors = $playeropens;
                        include("injury-input.php");
                        exit;
       }
           for($i=0; $i < $num; $i++) {
               if (!fwrite($fp, $list[$i])) {
                        $injury_errors = $playerwrite;
                                include("injury-input.php");
                                exit;
           }       
           }
       fclose($fp);
        }
        else { 
                $injury_errors = $notwritable;
                include("injury-input.php");
                exit;   
        }
        
$injury_errors = $updated;
unset($list); unset($content); unset($num); unset($filename);
unset($fd); unset($fp);
return($injury_errors);

}


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to