tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
ERLEDIGT
NEIN
ANTWORTEN
24
ZUGRIFFE
1174
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    J1M1 J1M1 ist offline Mitglied Gold
    Registriert seit
    Mar 2005
    Beiträge
    131
    Hallo!

    Ich erstelle gerade ein Adressbuch für meine Website... Das Problem ist, dass man die alten Einträge nicht wie beim Gästebuch ans Ende anhängen kann, sondern ich will dass die Einträge nach dem Namen alphabetisch geordnet sind... Leider weiß ich nicht wie ich das machen soll.

    Hier ist der Code von einem PHP-Gästebuch (das Fettgedruckte ist der Code, dass die alten Einträge einfach nur ans Ende hängt und somit geändert werden muss):
    PHP-Code:
     <html>
    <head>
    <title>Gästebuch</title>
    </head>
    <body>
    <div align="center">
    <a href="eintrag.html" target="_self">Neuer Eintrag</a><br>
    <br>
    <?php


    $name 
    $HTTP_POST_VARS['name'];
    $email $HTTP_POST_VARS['email'];
    $text $HTTP_POST_VARS['adresse'];

    if(
    $submit)

    {
    if((
    $email == "") || ($name == "") || ($adresse == ""))
    echo 
    "<b>Fehlgeschlagen! Bitte alle Felder ausfüllen!</b>";

    else
    {

    // Variable X wird auf null gesetzt
    $x 0;

    $dateiname "abook.txt";

    $datei fopen($dateiname"r");

    while (!
    feof($datei)) {
    $x++;
    $saved[$x] = fgets($datei1024);

    }
    // Datum und Uhrzeit ermitteln
    $datum date("d.m.Y");
    $zeit date("H:i");

    $datei=fopen("abook.txt""w");

    $text=strip_tags($adresse);

    [
    B]// Hier wird der neue Eintrag in die Datei geschrieben
    fwrite($datei,"<table border=0 width=500 bgcolor=000000 cellspacing=1 cellpadding=3><tr><td bgcolor=ffffff><a href=\"mailto:$email\"><b>$name</b></a> schrieb am $datum um $zeit Uhr</td></tr><tr><td bgcolor=white>$adresse</font></td></tr></table>\n");


    for (
    $i=1;$i <= $x$i++) {
    fwrite($datei"$saved[$i]");
    }[/
    B]
    // Datei schliessen
    fclose($datei);
    }
    }



    $dateiname "abook.txt";
    $datei fopen($dateiname"r");
    fpassthru($datei);
    ?>
    </div>
    </body>
    </html>
    Hoffe auf Ideen....

    Mfg J!M!
     

  2. #2
    FipsTheThief FipsTheThief ist offline Mitglied Platin
    Registriert seit
    Oct 2004
    Ort
    Leipzig
    Beiträge
    589
    Ich würde versuchen die Datei auszulesen , die Werte an gewissen Trennszeichen zu zerlegen , diese dann alle in ein Array speichern.

    Den neusten Antrag hinten ran hängen an das Array mit array_push() um dann alles mit sort() zu sotieren. Und dieses Array dann wieder zu einen Text zusammenfügen und komplett reinspeichern.

    Datei müsstest du dazu mit dem modus w öffnen um den alten Inhalt noch rauszuhaun dann bevor du es wieder neu reinschreibst.

    PHP-Code:
           $x 0
           
           
    $adressen = array();
        
    $saved "";
          
    $dateiname "abook.txt"
          
    $datei fopen($dateiname"r"); 
           
           while (!
    feof($datei)) { 
             
    $saved .= fgets($datei255); 
          } 
           
           
    $saved explode("Trennzeichen" $saved);
           for(
    $i $i count($saved) ; $i++)
           {
               
    array_push($adressen $saved[$i);
           }
           
           
    $eintrag array_push($adressen$neuer_eintrag
           
    // neuer eintrag ist quasi das was du im Mailform da angegeben hast
           
    $eintrag join ("Trennzeichen" sort($adressen)); 
    So würde ich es probieren mal , und ist ungetestet nun aber ich vermute so könnte es klappen

    Edit wo ich eben drüber nachdenke , könntest du es bei der Abfrage sotieren , im Prinzip musst du bei beiden die Email / Namen oder was auch immer rausfiltern mittels regulären Ausdrücken und diese dann sotieren. Ansonsten versucht er immer die Tabelle zu sotieren was ja nun quatsch ist im eigentlichen.Also würde ich das eigentlich direkt bei der Ausgabe machen dann.
    Geändert von FipsTheThief (30.09.05 um 14:57 Uhr)
     

  3. #3
    Avatar von forsterm
    forsterm forsterm ist offline Mitglied Rubin
    Registriert seit
    Nov 2004
    Ort
    Bayern
    Beiträge
    1.328
    Hallo,
    es geht noch einfacher. Du liest die Textdatei mit file() in ein Array. Dieses Array kannst du dan sortiert ausgeben.

    mfg
    forsterm
     
    Wie man Fragen richtig stellt

    Wichtig:
    Bitte markiert eure beantworteten Fragen als "erledigt" (links unten auf "Erledigt" klicken).
    __________________
    .:Mitglied #26 des 1. offiziellen Sven Uwe Fan-Clubs:.

  4. #4
    FipsTheThief FipsTheThief ist offline Mitglied Platin
    Registriert seit
    Oct 2004
    Ort
    Leipzig
    Beiträge
    589
    Mhm das Problem das ich bei file() sehen würde das er es Zeilenweise in ein Array speichert.

    Also wenn es mit Umbrüchen in der Datei steht dann kommt es da zu Problemen.Des weiteren bin ich mir nicht sicher wie Sort() vorgeht.
    Eigentlich sollte ja jeder Eintrag der Tabellen gleich sein bis zu den Einträgen Mail und Name.Da müsste er das eigentlich sotieren dann.Also wäre das mit den Regulären Ausdrücken übertrieben und man würde ja Versuchen nen Quicksort zu schreiben.
    Wie gesagt es ist nicht getestet , aber theoretisch sollte das funktionieren. Wenn die Einträge , also die komplette Tabelle in einer Zeile ist sollte das mit file() kürzer klappen.
     

  5. #5
    J1M1 J1M1 ist offline Mitglied Gold
    Registriert seit
    Mar 2005
    Beiträge
    131
    @fipsthethief
    kann man sich voll auf dein skript verlassen oder sind da einige fehler dabei?
    die fehler die ich gefunden habe schreibe ich als kommentar in dein skript rein... bitte bestätige mir dann ob es wirklich fehler sind...
    PHP-Code:
    $x 0
           
           
    $adressen = array();
        
    $saved "";
          
    $dateiname "abook.txt"
          
    $datei fopen($dateiname"r"); 
           
           while (!
    feof($datei)) { 
    //muss hier nicht wie beim Guestbookskript  eigentlich "x++" und "saved[x]"stehen?
             
    $saved .= fgets($datei255); 
          } 
           
           
    $saved explode("Trennzeichen" $saved);
    //muss hier die datei nicht erstmal im 'w' modus geöffnet werden?
           
    for($i $i count($saved) ; $i++)
           {
               
    array_push($adressen $saved[$i);
           }
           
           
    $eintrag array_push($adressen$neuer_eintrag
           
    // neuer eintrag ist quasi das was du im Mailform da angegeben hast
           
    $eintrag join ("Trennzeichen" sort($adressen)); 
    Mfg J!M!

    P.S.: trotzdem danke für deine antwort
     

  6. #6
    FipsTheThief FipsTheThief ist offline Mitglied Platin
    Registriert seit
    Oct 2004
    Ort
    Leipzig
    Beiträge
    589
    Also ich denk schon das es so klappt , im Prinzip sotiere ich ja das Array damit und da ja alle Einträge soweit gleich sind durch die Tabelle sollte er erst Unterschiede bei einen Namen oder Emain finden. Somit würde ich sagen ja haut hin.

    Nein es muss kein $x++ stehen oder $saved[$x] da ich jede Zeile einlese und an einanderhänge.
    Also sieht so ca aus dann , $zeileN ... $zeile3,$zeile2,$zeile1.

    Das habe ich aus diesem Grunde so gemacht da es in meiner Textdatei nicht in einer Zeile gespeichert war sondern sich die Tabelle über 4 - 5 Zeilen hinzog. Somit hatte ich erstmal alles in einen String und habe es dann anhand eines Trennzeichens zerlegt.

    Die Datei wurde erstmal im Modus r geöffnet am Anfang um den Inhalt in Ruhe auszulesen , wenn du sie an dieser Stelle mit Modus w öffnen würdest dann wäre der gesammte Inhalt weggewesen. Des weiteren hab ich dann weiter unten die Datei im Modus w geöffnet als er es reinschreiben sollte

    Der Teil fehlt da in diesem Script also nen bissel was musst selber noch machen.

    Und wie schon gesagt , wenn deine Einträge immer in einer Zeile sind dann kann man wie schon oben gesagt file() nehmen. Geht flotter ohne das rumgemurkse
     

  7. #7
    J1M1 J1M1 ist offline Mitglied Gold
    Registriert seit
    Mar 2005
    Beiträge
    131
    Der Teil fehlt da in diesem Script also nen bissel was musst selber noch machen.
    achso, ich habe mich versehen....
    du hast ja nur ein die variable/array $einträge geschrieben... ich dachte du schreibst schon die abook.txt....und so mit in die datei....

    das heißt ich müsste dann noch schreiben
    PHP-Code:
    $datei=fopen("abook.txt""w"); 
    fwrite($datei"$einträge"); 
    richtig?
    wie gesagt, bin nicht so gut in PHP, deswegen stell ich glaueb ich ein bissl zu viel fragen...

    danke!

    Mfg J!M!
     

  8. #8
    FipsTheThief FipsTheThief ist offline Mitglied Platin
    Registriert seit
    Oct 2004
    Ort
    Leipzig
    Beiträge
    589
    richtig

    in dem Fall zwar $eintrag , weil $eintrag ist das wo alle Array Elemente sotiert und dann zusammengeführt wurden.

    Im Prinzip ist es das gleiche was du auch machst in deiner Funktion , nur setzt die Array Elemente direkt fest mittels $saved[$x] und jedes Element enthält 102x zeichen.

    Ich pack es erstmal in einen String und kümmer mich dann später darum
    Geändert von FipsTheThief (02.10.05 um 23:16 Uhr)
     

  9. #9
    J1M1 J1M1 ist offline Mitglied Gold
    Registriert seit
    Mar 2005
    Beiträge
    131
    also irgendwo ist da doch ein fehler...
    ist glaube ich auch meiner....

    dies ist der quelltext den ich jetzt verwende:
    PHP-Code:
    <?php
    $vorname 
    =  $HTTP_POST_VARS['vorname']; 
    $nachname $HTTP_POST_VARS['nachname']; 
    $adresse $HTTP_POST_VARS['adresse'];
    $phone $HTTP_POST_VARS['phone'];
    $mobile $HTTP_POST_VARS['mobile'];
    $email $HTTP_POST_VARS['email']; 
    $msn $HTTP_POST_VARS['msn'];
    $icq $HTTP_POST_VARS['icq'];

     

    if(
    $submit


    if((
    $vorname == "") && ($nachname == "") && ($adresse == "") && ($phone == "") && ($mobile == "") && ($email == "") && ($msn == "") && ($icq == "")) 
    echo 
    "<b>Fehlgeschlagen! Bitte alle Felder ausfüllen!</b>"

    else 


    // Variable X wird auf null gesetzt 
    $x 0
           
    $new = array();
           
    $adressen = array();
           
    $saved "";
           
    $dateiname "abook.txt"
           
    $datei fopen($dateiname"r"); 
           
           while (!
    feof($datei)) { 
             
    $saved .= fgets($datei255); 
           } 
           
           
    $saved explode("," $saved);
           for(
    $i $i count($saved) ; $i++)
           {
               
    array_push($adressen $saved[$i]);
           }
           
           
    $eintrag array_push($adressen$vorname$nachname$adresse$phone$mobile$email$msn$icq); 
           
    // neuer eintrag ist quasi das was du im Mailform da angegeben hast
           
    $eintrag join ("," sort($adressen));

    $datei=fopen("abook.txt""w"); 
    fwrite($datei"$eintrag"); 
     
    fclose($datei); 



    $dateiname "abook.txt"
    $datei fopen($dateiname"r"); 
    fpassthru($datei); 

    ?>
    und der HTML-Quellcode ist:
    HTML-Code:
    <form name="eintrag" action="/book.htm" method="post">
    <table border="0" cellpadding="0" cellspacing="6" width="191">
    <tr>
    <td>Vorname:</td>
    <td><input type="text" name="vorname"></td>
    </tr>
    <tr>
    <td>Nachname</td>
    <td><input type="text" name="nachname"></td>
    </tr>
    <tr>
    <td>Adresse(=>Straße, Hausnummer, PLZ, Stadt)</td>
    <td><input type="text" name="adresse"></td>
    </tr>
    <tr>
    <td>Telefonnummer</td>
    <td><input type="text" name="phone"></td>
    </tr>
    <tr>
    <td>Handynummer</td>
    <td><input type="text" name="mobile"></td>
    </tr>
    <tr>
    <td>Email:</td>
    <td><input type="text" name="email"></td>
    </tr>
    <tr>
    <td>MSN</td>
    <td><input type="text" name="msn"></td>
    </tr>
    <tr>
    <td>ICQ</td>
    <td><input type="text" name="icq"></td>
    </tr>
    <tr>
    <td><input type="reset" value="Reset"></td>
    <td>
    <input type="submit" name="submit" value="Eintragen">
    </td>
    </tr>
    </table>
    </form>
    wenn du nun auf http://hang.ha.funpic.de/new_add.htm gehst und die felder mal ausfüllst und es probierst... erscheint die meldung
    Warning: join(): Bad arguments. in /usr/export/www/vhosts/funnetwork/hosting/hang/book.htm on line 106

    Mfg J!M!
     

  10. #10
    J1M1 J1M1 ist offline Mitglied Gold
    Registriert seit
    Mar 2005
    Beiträge
    131
    ok... es ist doch nicht mein fehler...

    und zwar wenn ich das "sort" wegmache, dann gíbt es da kein problem. es wird glaube ich das "sort" einfach nicht erlaubt.
    aber somit ist die haupfunktion weg.
    es macht sichauch bemerkbar:
    es gibt KEINE zeilenumbrüche, alles ist in eine Zeile geschrieben... etc
     

  11. #11
    J1M1 J1M1 ist offline Mitglied Gold
    Registriert seit
    Mar 2005
    Beiträge
    131
    hab jetzt das skript so umgeschrieben dass es funktioniert:
    PHP-Code:
    <?php
    $vorname 
    =  $HTTP_POST_VARS['vorname']; 
    $nachname $HTTP_POST_VARS['nachname']; 
    $adresse $HTTP_POST_VARS['adresse'];
    $phone $HTTP_POST_VARS['phone'];
    $mobile $HTTP_POST_VARS['mobile'];
    $email $HTTP_POST_VARS['email']; 
    $msn $HTTP_POST_VARS['msn'];
    $icq $HTTP_POST_VARS['icq'];

     

    if(
    $submit


    if((
    $vorname == "") && ($nachname == "") && ($adresse == "") && ($phone == "") && ($mobile == "") && ($email == "") && ($msn == "") && ($icq == "")) 
    echo 
    "<b>Fehlgeschlagen! Bitte alle Felder ausfüllen!</b>"

    else 


    // Variable X wird auf null gesetzt 
    $x 0
           
    $new = array();
           
    $adressen = array();
           
    $saved "";
           
    $dateiname "abook.txt"
           
    $datei fopen($dateiname"r"); 
           
           while (!
    feof($datei)) { 
             
    $saved fgets($datei255); 
           } 
           
           
    $saved explode("  " $saved);
           for(
    $i $i count($saved) ; $i++)
           {
               
    array_push($adressen $saved[$i]);
           }       

                 
    $eintrag array_push($adressen$vorname$nachname$adresse$phone$mobile$email$msn$icq) ;
           
    // neuer eintrag ist quasi das was du im Mailform da angegeben hast
                 
    $eintrag asort($adressen);
           
    $eintrag join ("  " $adressen); 

                 
    $datei=fopen("abook.txt""w"); 
    fwrite($datei"$eintrag"); 
     
    fclose($datei); 



    $dateiname "abook.txt"
    $datei fopen($dateiname"r"); 
    fpassthru($datei); 

    ?>
    leider fällt mir jetzt auf dass ich die daten nicht formatieren kann..
    -alle einträge sind nach einander geschrieben, d.h. nichts mit zeilenumbruch...
    -außerdem möchte ich ja auch noch die überschriften "vorname ", "nachname" etc. machen, und dann sollen die jeweiligen Daten unter der zugrhörigen überschrift stehen...
    -es ist wie ich befürchtet habe : es wird nicht der eintrag sortiert, sondern die variablen einzeln....


    Mfg J!M!
    Geändert von J1M1 (03.10.05 um 01:31 Uhr)
     

  12. #12
    FipsTheThief FipsTheThief ist offline Mitglied Platin
    Registriert seit
    Oct 2004
    Ort
    Leipzig
    Beiträge
    589
    Du musst das natürlich vorher in eine Form bringen bevor Du es abspeicherst.

    Wie zum Beispiel hier :

    PHP-Code:
      <?php
        $kommentar 
    $_POST["comment"];
        
    $eintraege "";
        
    $alle_eintraege= array();
        
    $dt "gb.txt";
       
        
    $file fopen($dt"r");
        while(!
    feof($file)){
            
    $eintraege .= fgets($file,255);
        }
        
    fclose($file);
        
    $eintraege explode("|##|" $eintraege);
        for(
    $i $i count($eintraege) ; $i++){
           
    array_push($alle_eintraege $eintraege[$i]);
        }
        
    $aktueller_eintrag'<table cellspacing=0 cellpadding=0 border=2 width=345>
                              <tr>
                              <td width="250">'
    .$_POST["UserName"].'<td>
                              <td align="right" width="100">'
    .date("d.m.Y").'</td>
                              </tr><tr>
                              <td colspan=3>'
    .
                                  
    $kommentar
                              
    .'</td>
                              </tr>
                              </table><br>'
    .'|##|';
       
        
    array_push($alle_eintraege $aktueller_eintrag);
        
    sort($alle_eintraege);
     
    $neuer_eintrag join("|##|"$alle_eintraege);
       
        
    $file fopen($dt"w+");
        
    fwrite($file $neuer_eintrag);
        
    fclose($file);
       
    ?>
    So nun hab ich es selber nochmal getestet und es geht bei mir Zumindest gibt er es mir Sotiert aus in dem Falle würde er es nun sotiert in die Datei reinschreiben gleich..

    Die Einträge haben dann diese Form innerhalb der Datei

    1. Eintrag|##|2.Eintrag|##|n. Eintrag|##|

    $aktueller_eintrag ist hierbei das was eben eingegeben wurde und neu hinzukommt.
    $eintraege sind alle Einträge die bisher in der Datei waren
    $neuer_eintrag ist halt der aktuelle Eintrag + die alten Einträge.

    Anpassen musst du es dann selber , also in der Form der Tabelle dafür bin ich nun zu träge
    Geändert von FipsTheThief (03.10.05 um 02:45 Uhr)
     

  13. #13
    J1M1 J1M1 ist offline Mitglied Gold
    Registriert seit
    Mar 2005
    Beiträge
    131
    hi!

    hab es jetzt so umgeändert, dass die daten erstmal in $new formatiert werden und dan an $adressen rangehängt wird.

    PHP-Code:
    <?php 
    $vorname 
    =  $HTTP_POST_VARS['vorname']; 
    $nachname $HTTP_POST_VARS['nachname']; 
    $adresse $HTTP_POST_VARS['adresse']; 
    $phone $HTTP_POST_VARS['phone']; 
    $mobile $HTTP_POST_VARS['mobile']; 
    $email $HTTP_POST_VARS['email']; 
    $msn $HTTP_POST_VARS['msn']; 
    $icq $HTTP_POST_VARS['icq']; 



    if(
    $submit


    if((
    $vorname == "") && ($nachname == "") && ($adresse == "") && ($phone == "") && ($mobile == "") && ($email == "") && ($msn == "") && ($icq == "")) 
    echo 
    "<b>Fehlgeschlagen! Bitte alle Felder ausfüllen!</b>"

    else 


    // Variable X wird auf null gesetzt 
    $x 0
           
    $new = array(); 
           
    $adressen = array(); 
           
    $saved ""
           
    $dateiname "abook.txt"
           
    $datei fopen($dateiname"r"); 
            
           while (!
    feof($datei)) { 
             
    $saved fgets($datei255); 
           } 
            
           
    $saved explode("  " $saved); 
           for(
    $i $i count($saved) ; $i++) 
           { 
               
    array_push($adressen $saved[$i]); 
           }        
           
    $new '<table>
                  <tr>
                  <td>'
    .$vorname.'<td>
                  <td>'
    .$nachname.'</td>
                  <td>'
    .$adresse.'</td>
                                <td>'
    .$phone.'</td>
                                <td>'
    .$mobile.'</td>
                                <td>'
    .$email.'</td>
                                <td>'
    .$msn.'</td>
                                <td>'
    .$icq.'</td>             
                  </table><br>'
    .'   ';
                                
    array_push($adressen$new) ;
                 
    $eintrag =  $adressen;
           
    // neuer eintrag ist quasi das was du im Mailform da angegeben hast 
                 
    $eintrag asort($adressen); 
           
    $eintrag join ("  " $adressen); 

                 
    $datei=fopen("abook.txt""w"); 
    fwrite($datei"$eintrag"); 

    fclose($datei); 



    $dateiname "abook.txt"
    $datei fopen($dateiname"r"); 
    fpassthru($datei); 

    ?>
    jetzt wird jedoch alles überschrieben....

    Mfg J!M!

    P.S.: man, ich hasse das...

    noch mal danke für dein geduld.
     

  14. #14
    FipsTheThief FipsTheThief ist offline Mitglied Platin
    Registriert seit
    Oct 2004
    Ort
    Leipzig
    Beiträge
    589
    Jops natürlich , die Datei wird geöffnet geleert und dann neu geschrieben. Ich würde die Datei nach dem auslesen noch schliessen dann da Du sie ja erneut öffnest weiter unten.

    Du könntest es auch so alles in die Datei schreiben in dem du die Datei im Modus a öffnest und den letzten Eintrag hinten ranhängst und dann beim auslesen sotieren , spielt so gesehen gar keine direkte Rolle da es eh sotiert wird.

    auslesen :

    PHP-Code:
               <?php
          $adressen 
    = array();  
                     
    $saved "";  
                     
    $dateiname "abook.txt";  
                     
    $datei fopen($dateiname"r");  
                       
                     while (!
    feof($datei)) {  
                       
    $saved fgets($datei255);  
                     }  
             
    fclose($datei);
                       
                     
    $saved explode("  "$saved);  
                     for(
    $i $i count($saved) ; $i++)  
                     {  
                         
    array_push($adressen $saved[$i]);  
                     }
               
                
    asort($adressen);
               
    // wenn man sie sich gleich ausgeben möchte join weiter
               // ansonsten halt das Array durchgehen wie gehabt
               // und jeden Eintrag auslesen um damit weiterzuarbeiten
               // Zum  Beispiel so ne Leiste A-Z etc und dann 
               // dort drunter anzeigen oder auch so anzeigen lassen
               
                
    $adressen join ("  ",$adressen);
                echo 
    $adressen.
               
    ?>
    schreiben:
    PHP-Code:
           <?php
           
    //der ganze if Krempel hier ;) 
            
                 
    $dateiname "abook.txt";  
                
    $new '<table> 
                        <tr> 
                        <td>'
    .$vorname.'<td> 
                        <td>'
    .$nachname.'</td> 
                        <td>'
    .$adresse.'</td> 
                                 <td>'
    .$phone.'</td> 
                                <td>'
    .$mobile.'</td> 
                                <td>'
    .$email.'</td> 
                                <td>'
    .$msn.'</td> 
                                <td>'
    .$icq.'</td>             
                        </table><br>'
    .'  '
                        
          
    $datei=fopen("abook.txt""a");  
          
    fwrite($datei"$new");  
           
          
    fclose($datei);  
           
    ?>
    Sieht ein wenig übersichtlicher aus , wäer halt schreiben im Modus a , so wird der neuste Eintrag automatisch hinten rangehängt was ja beim Sotieren eigentlich egal ist wie es drinnen steht, hauptsache es steht drinnen.

    Noch etwas :

    PHP-Code:
      $eintrag =  $adressen
     
    $eintrag asort($adressen); 
    du brauchst doch nur asort($adressen) angeben das andere $eintrag ist unnütz
    Geändert von FipsTheThief (03.10.05 um 15:09 Uhr)
     

  15. #15
    J1M1 J1M1 ist offline Mitglied Gold
    Registriert seit
    Mar 2005
    Beiträge
    131
    so wird der $new aber beim sortieren nicht mit einbezogen....?

    ich habe jetzt nun
    PHP-Code:
    fclose($datei); 
    , so dass das skript jetzt so aussieht....
    PHP-Code:
    <?php 
    $vorname 
    =  $HTTP_POST_VARS['vorname']; 
    $nachname $HTTP_POST_VARS['nachname']; 
    $adresse $HTTP_POST_VARS['adresse']; 
    $phone $HTTP_POST_VARS['phone']; 
    $mobile $HTTP_POST_VARS['mobile']; 
    $email $HTTP_POST_VARS['email']; 
    $msn $HTTP_POST_VARS['msn']; 
    $icq $HTTP_POST_VARS['icq']; 



    if(
    $submit


    if((
    $vorname == "") && ($nachname == "") && ($adresse == "") && ($phone == "") && ($mobile == "") && ($email == "") && ($msn == "") && ($icq == "")) 
    echo 
    "<b>Fehlgeschlagen! Bitte alle Felder ausfüllen!</b>"

    else 


    // Variable X wird auf null gesetzt 
    $x 0
           
    $new = array(); 
           
    $adressen = array(); 
           
    $saved ""
           
    $dateiname "abook.txt"
           
    $datei fopen($dateiname"r"); 
            
           while (!
    feof($datei)) { 
             
    $saved fgets($datei255); 
                     
    $saved explode(" " $saved);
           } 
             
                 
    fclose($datei);
                 
           
           for(
    $i $i count($saved) ; $i++) 
           { 
               
    array_push($adressen $saved[$i]); 
           }        
                
           
    $new '<table>
                  <tr>
                  <td>'
    .$vorname.'<td>
                  <td>'
    .$nachname.'</td>
                  <td>'
    .$adresse.'</td>
                                <td>'
    .$phone.'</td>
                                <td>'
    .$mobile.'</td>
                                <td>'
    .$email.'</td>
                                <td>'
    .$msn.'</td>
                                <td>'
    .$icq.'</td>             
                  </table><br>'
    .'   ';
                                
    array_push($adressen$new) ;
                  
    $eintrag =  $adressen;
           
    // neuer eintrag ist quasi das was du im Mailform da angegeben hast 
                  
    $eintrag asort($adressen); 
                  
    $eintrag join (" " $adressen); 

                 
    $datei=fopen("abook.txt""w+"); 
    fwrite($datei"$eintrag"); 

    fclose($datei); 



    $dateiname "abook.txt"
    $datei fopen($dateiname"r"); 
    fpassthru($datei); 

    ?>
    jedoch wird trotzdem alles überschrieben...


    Mfg J!M!

    P.S: *confused*
    Geändert von J1M1 (03.10.05 um 15:58 Uhr)
     

Ähnliche Themen

  1. Outlook Adressbuch
    Von texta1001 im Forum Office-Anwendungen
    Antworten: 1
    Letzter Beitrag: 20.07.06, 14:59
  2. AdressBuch
    Von Grüner Goblin im Forum Visual Basic 6.0
    Antworten: 7
    Letzter Beitrag: 31.12.05, 01:36
  3. Adressbuch!
    Von apfelkorn im Forum .NET Archiv
    Antworten: 3
    Letzter Beitrag: 24.04.05, 18:13
  4. Adressbuch
    Von JackyD im Forum Visual Basic 6.0
    Antworten: 6
    Letzter Beitrag: 31.12.04, 10:30
  5. adressbuch
    Von Gravidi im Forum Visual Basic 6.0
    Antworten: 2
    Letzter Beitrag: 05.03.03, 22:05