array in txt zeilenweise einlesen

cb_master

Mitglied
ich möchte immer noch 2 zusammengehörige daten pro zeile in eine txt datei ein und später wieder auslesen. wie stell ich das an !!!!!!! so schwer kann das doch nicht sein das mir hier keiner helfen kann ! oder ?


ich habe ein formular mit dem ich die daten sende - dieses hier (kurzform):


PHP:
<?php
   echo "<form action=\"admin_smilie_ok.php\" method=\"post\">";

   echo "<input type=\"hidden\" name=\"sm_no\" value=\"0\">";
   echo "<input type=\"text\" name=\"sm_url_neu\" size=\"10\" maxlength=\"25\" value=\"$sm_url\">";
   echo "<input type=\"text\" name=\"sm_code_neu\" size=\"10\" maxlength=\"25\" value=\"$sm_code\"> ";

   echo "<input type=\"hidden\" name=\"sm_no\" value=\"1\">";
   echo "<input type=\"text\" name=\"sm_url_neu\" size=\"10\" maxlength=\"25\" value=\"$sm_url\">";
   echo "<input type=\"text\" name=\"sm_code_neu\" size=\"10\" maxlength=\"25\" value=\"$sm_code\"> ";

   echo "<input type=\"hidden\" name=\"sm_no\" value=\"2\">";
   echo "<input type=\"text\" name=\"sm_url_neu\" size=\"10\" maxlength=\"25\" value=\"$sm_url\">";
   echo "<input type=\"text\" name=\"sm_code_neu\" size=\"10\" maxlength=\"25\" value=\"$sm_code\"> ";


   echo "<input type=\"submit\" value=\"Smilie $sm_counter ändern\"></form>";
?>



so und nun will ich die daten speichern - in der form hier:


PHP:
$datei = "smilie.dat";
$fp = fopen("$datei","w+");

      // diese Eingaben aus dem Array ziehen
      $lg[0] = "$sm_url_neu";
      $lg[1] = "$sm_code_neu";
      $lg[3] = "$sm_no";

      $array      = array($lg);
      $sm_array = implode("||°||", $lg);

// hier das in eine schleife ? und dann erst speichern ?

      if ($fp) {
        flock($fp,2);

        fputs($fp, "$sm_array" . "||°||\n"); // SPEICHERN DER EINTRÄGE
        } // end for

        flock($fp,3);
        fclose($fp);
      } else {
        echo "<font size=$size_font1 color=$color_font3 face=$style_font>Datei konnte nicht zum Schreiben geöffnet werden !";
        echo "<br />";
      }



was muß ich hier beim speichern ändern damit alle daten gespeichert werden und nicht nur der teil 1 ???
 
so wie sich der code hier darstellt ist es
überflüssig über ein array zu gehen...

fputs($fp,$sm_url_neu."||".$sm_code_neu."||".$sm_no);

geht auch ..
 
Zuletzt bearbeitet:
naja der effekt so ist der gleiche ist mir bekannt - ich will aber nicht nur das das erste formular eingelesen wird sondern alle !!!

kann man da nicht in einer schleife alle formularfeldre in das array einlesen bzw ein 2 dimensionales array anlagen ?

ich brauch da mal einen sinnvollen code.

auch damit ich das später wieder sinnvoll auslesen kann ! tx
 
du musst deine formular umstellen:
PHP:
echo "<input type=\"hidden\" name=\"sm_no[]\" value=\"1\">";
   echo "<input type=\"text\" name=\"sm_url_neu[]\" size=\"10\" maxlength=\"25\" >";
   echo "<input type=\"text\" name=\"sm_code_neu[]\" size=\"10\" maxlength=\"25\" > ";

die values hinten sind überflüssig ....

ansonsten musst du aus den vars arrays machen...

PHP:
for ($lo=0;$lo<sizeof($sm_code_neu);$lo++)) {
fputs($fp,$sm_url_neu[$lo]."||".$sm_code_neu[$lo]."||".$sm_no[$lo]); 
}

und hier wird das übergebene array aufgedröselt...

und abgespeichert..
 
Zurück