Ergebnis 1 bis 16 von 16

Thema: kleines PHP script zu programmieren - help plz

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    sooooo, also ich hab jetzt mal wieder ein bisschen gebastelt und das script funktioniert weitesgehen wunderbar. also an der stelle schon mal danke für die schwere geburt

    ich hab das script minimalst abgewandelt bzw. es meinen bedürfnissen angepasst. trotzdem hab ich jetzt noch 2 probleme:

    1. wie kann ich die einzelnen infos einer person abrufen? der befehl
    Code:
     echo $menschen[1]['adresse'];
    verfehlt irgendwie seine wirkung.

    ich hab vor die infos in einem textfeld anzeigen zu lassen, also zB
    Code:
           <tr>
            <td style="padding:2px">Vorname:</td>
            <td style="padding:2px"><input <? echo $menschen[1]['name2']; ?> name="name2" cols="15" /></td>
           </tr>
    und die dann wieder durch den parser um den vorhandenen eintrag zu ersetzen.
    mag aber nicht.

    kurz zu erklärung, ich mittlerweile ein weiteres namensfeld geaddet damit ich es später bei der anzeige auf der hauptsite besser anordnen kann.

    2. wie mach es dem script klar dass er möglichst absätze machen soll wenn er in die menschen.yml datei schreibt? wenn ich die datei mit notepad öffne erkennt er zwar die absätze, zeigt mir aber nur die absatzzeichen an und macht keinen... das ist irgendwie lästig.

    thx,
    [JLA]

    p.s. hier mal das eingabefeld und der parser
    Code:
    ///// EINGABEFELD ///////
    <p>
         <form method="post" action="namen_inlcude.php" name="formular" id="formular">
          <table>
           <tr>
            <td style="padding:2px">Vorname:</td>
            <td style="padding:2px"><input type="text" name="name2" cols="15" /></td>
           </tr>
           <tr>
            <td style="padding:2px">Nachname:</td>
            <td style="padding:2px"><input type="text" name="name1" cols="15" /></td>
           </tr>
           <tr>
            <td style="padding:2px">Adresse:</td>
            <td style="padding:2px"><input type="text" name="adresse" cols="30" /></td>
           </tr>
           <tr>
            <td style="padding:2px">PLZ - Ort:</td>
            <td style="padding:2px"><input type="text" name="plz" cols="8" />
    	<style="padding:2px"><input type="text" name="input_ort" cols="20"/>
           </tr>
           <tr>
            <td style="padding:2px">Tel. Nr.:</td>
            <td style="padding:2px"><input type="text" name="tel" cols="20" /></td>
           </tr>
           <tr>
            <td style="padding:2px">eMail:</td>
            <td style="padding:2px"><input type="text" name="email" cols="30" /></td>
           </tr>
           <tr>
            <td style="padding:2px"> </td>
            <td style="padding:2px">
    <br />
              <input name="speichern" type="submit" id="speichern" value="Speichern" />
              <input name="loeschen" type="reset" id="loeschen" value="Zur&uuml;cksetzen" />
            </td>
           </tr>
          </table>
         </form>
    </p>
    Code:
    //////  Parser ///////
    <?php
      include('spyc/spyc.php');
      $menschen = Spyc::YAMLLoad('spyc/menschen.yml');
    
    
    $menschen[$id]['name1'] = $_POST['name1']; 
    $menschen[$id]['name2'] = $_POST['name2']; 
    $menschen[$id]['adresse'] = $_POST['adresse']; 
    $menschen[$id]['plz'] = $_POST['plz']; 
    $menschen[$id]['ort'] = $_POST['ort']; 
    $menschen[$id]['tel'] = $_POST['tel']; 
    $menschen[$id]['email'] = $_POST['email']; 
    
      $fp = fopen('menschen.yml', 'w');
      fwrite($fp, Spyc::YAMLDump($menschen));
      fclose($fp);
    
    echo "<script>self.location=\"namen_success.php\";</script>";
    
    ?>

    Geändert von Armitage2k (13.05.2006 um 17:03 Uhr)

  2. #2
    Erstens: Bitte, wenn du in alle deine <td>-Tags "padding: 2px;" reinschreibst, mach das doch einfach global. Also zwischen Header und Body
    HTML-Code:
    <style type = "text/css">
        td { padding: 2px; }
    </style>
    einfügen.
    Zitat Zitat von [JLA]Godkill
    1. wie kann ich die einzelnen infos einer person abrufen? der befehl
    Code:
     echo $menschen[1]['adresse'];
    verfehlt irgendwie seine wirkung.
    Weiß ich nicht, probier mal, es in einen String zu schreiben:
    PHP-Code:
    echo "{$menschen[1]['adresse']}"
    Aber wie gesagt, ich weiß es nicht.
    Zitat Zitat
    ich hab vor die infos in einem textfeld anzeigen zu lassen, also zB
    Code:
           <tr>
            <td style="padding:2px">Vorname:</td>
            <td style="padding:2px"><input <? echo $menschen[1]['name2']; ?> name="name2" cols="15" /></td>
           </tr>
    und die dann wieder durch den parser um den vorhandenen eintrag zu ersetzen.
    mag aber nicht.
    Das sieht dann in der HTML-Ausgabe so aus:
    HTML-Code:
    <input Donald Duck name="name2" cols="15" />
    Ergo: wenn du's einfach nur so in den <input>-Tag schreibst, kann's ja garnicht klappen. So wär's afaik richtig:
    PHP-Code:
    <input value = "<?php echo $menschen[1]['name2']; ?>" name="name2" cols="15" />
    Aber bestimmt kommt gleich ohnehin jemand und sagt, dass mind. die Hälfte meines Geschreibsels Blödsinn ist. Aber probier's halt mal. Und meinen ersten Tipp kannst du auf jeden Fall umsetzten!

    Geändert von drunken monkey (13.05.2006 um 17:33 Uhr)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •