PHP eintrag in txt ändern

  • Hallo Leute
    ich hab da folegendes Problem da ich mich nicht so gut mit PHP auskenne komme ich damit nicht zurecht und zwar habe ich folgen den PHP code der Daten in eine txt schreibt und ich würde gärne das er den Eintrag der daten in der Txt anders aufbaut...

    Code für den Eintrag


    so sieht der Eintrag jetzt in der txt Datei aus

    Code
    DiamondDog|DiamondDog84ädgmx.de|2005/08/31 00:00|balbalbal


    und so sollte er aussehn..

    PHP
    <?php
    $name[] = "DiamondDog";
    $mail[] = "DiamondDog84ädgmx.de";
    $besch[] = "blablabla";
    ?>

    hoffe mir kann jamend helfen weil alleine krieg ich das leider nicht hin...
    Danke schon mal...

  • list($name,$mail,$datum,$beschreibung) = explode("|" "$string");

    $string stellt eine zeile aus der textdatei dann da und mit explode wird das ganze an der entprechenden stelle auseinandergenommen und dann in die variablen gepackt, die in list angegeben sind
    mfg

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • Hm... ok *gg* du hast da glaube ich was falsch verstanden ich wollte das der text aussieht wie im 2ten fenster mit <?php und so nich wie im ersten der obriege script trägt es ja so ein wie in fenster 2..

  • Also, versteh ich das richtig? Du hast einen PHP-Code, der PHP-Code in eine Datei schreiben soll? Oi... kann schwierig werden, da ja die Variablen-Namen immer interpretiert werden und nicht als plain text erkannt werden.
    Evtl würde es klappen, wenn du irgendwie die Funtionen htmlentities() oder stripslashes() benutzt.
    Kannstse dir ja mal anschauen...

    mfg, minibar182

    Das Leben ist wie Kaffee trinken. Nur dass du net Kaffee trinkst, sondern lebst. :kaffee:

  • also ich hab das jetzt schon wie folgt gemacht

    PHP
    $new_line = "<?php \n &name[] = \"" .$_POST['name']. "\n &email[] = \"" .$_POST['email']. "\n &message[] = \"" .$_POST['message']);


    das einziegste das ich nciht hinbekomme is das ?> für das php ende weil das gane ja in einem großen php scritpt steht würde er dann da immer das scipt beenden was er ja nich soll habs scho mit ?\> versucht oder so aber bekomm das einfach nciht hin das am ende vom eintrag noch ?> steht wenn mir jemand sagen kann wie ich das mache wären alle meine probleme gelöst...

  • Also ich hab das heuet nacht biß um 1 uhr mal ausprobiert so was ich wuste und bin jetzt so weit gekommen:

    PHP
    if(
    	  $new_line = "\n<?php \n&name[] = \"" .$_POST['name'].
    	   "\"\n&email[] = \"" .$_POST['email'].
    	    "\"\n&message[] = \"" .$_POST['message'].
    		 "\"\n?>"
    	  );

    der eintrag sieht dann so aus:

    PHP
    <?php 
    &name[] = "Name"
    &email[] = "mail[äd]mail.de"
    &message[] = "test"
    ?>


    das einzigeste was ich jetzt noch wissen müste wäre wie ich hinter jeder zeile ein ; bekomme dann is alles perfekt...

  • PHP
    $new_line = '<?php $name[] = "'.$_POST['name'].'"; \n 
    $email = "'.$_POST['email'].'"; \n $message = "'.$_POST['message'].'"; \n
    ?>';


    so müsste das doch gehen oder nich ?
    zum einen hat ein simikolon ja keine bedeutung für php, wenn es in einem string steht und ausserdem, kannst du auch variablen so schreiben, wenn du mit dem hochkomma arbeitest
    teste mal so

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • ich habs hinbekommen danke euch allen und so sieht das ergebnis aus:

    PHP
    if(
    	  $new_line = "\n<?php\n\$name[] = \"" .$_POST['name'].
    	   "\";\n\$mail[] = \"" .$_POST['email'].
    	   "\";\n\$besch[] = \"" .$_POST['besch'].
    	    "\";\n\$icq[] = \"" .$_POST['message']."\";\n?>"
    	  );

    und wenn ihr mal sehn wollt was ich mit dem script gemacht habe dann:
    klickt hier