ARRAY in Datenbank speichern

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • ARRAY in Datenbank speichern

    form.inc.php

    PHP-Code:
    <?
    $rasse= array ("Barsoi","Sloughi","Windspiele");
    $rasse_default = 0;
    $vorname = array("Klingsor's","Baruschka's");
    $vorname_default = 0;
    $klasse = array("J&uuml;ngstenklasse","Jugendklasse","Offeneklasse","Siegerklasse");
    $klasse_default = 0;

    //neuer Abschnitt

    $vorname1 = array("Klingsor's","Baruschka's");
    $vorname_default1 = 0;
    $klasse1 = array("J&uuml;ngstenklasse","Jugendklasse","Offeneklasse","Siegerklasse");
    $klasse_default1 = 0;

    //neuer Abschnitt

    $vorname2 = array("Klingsor's","Baruschka's");
    $vorname_default2 = 0;
    $klasse2 = array("J&uuml;ngstenklasse","Jugendklasse","Offeneklasse","Siegerklasse");
    $klasse_default2 = 0;

    //neuer Abschnitt

    $vorname3 = array("Klingsor's","Baruschka's");
    $vorname_default3 = 0;
    $klasse3 = array("J&uuml;ngstenklasse","Jugendklasse","Offeneklasse","Siegerklasse");
    $klasse_default3 = 0;
    ?>

    index.php

    PHP-Code:
    <?
    include ("form.inc.php");
    ?>
    <html>
    <body>
    <?
    if ($submit) {
    $db = mysql_connect("localhost","xxx","xxx") or die ("Verbindung zur Datenbank fehlgeschlagen"); 
    mysql_select_db("xxx",$db);
    $sql = "INSERT INTO test (ort,datum,rasse,vorname,name,klasse,ergebnis,vorname1,name1,klasse1,ergebnis1,vorname2,name2,klasse2,ergebnis2,vorname3,name3,klasse3,ergebnis3) VALUES ('$ort','$datum','$rasse','$vorname','$name','$klasse','$ergebnis','$vorname1','$name1','$klasse1','$ergebnis1','$vorname2','$name2','$klasse2','$ergebnis2','$vorname3','$name3','$klasse3','$ergebnis3')";
    $result = mysql_query($sql,$db);
    echo "Ihr Daten wurden abgeschickt! Vielen Dank!<br><br>";
    }

    else {
    ?>

    <form method="get" action="<? echo $PHP_SELF ?>">
      <table border="0" align="center" width="383">
        <tr bgcolor="#FF0000"> 
          <td> 
            <input type="text" name="ort" value="<? echo $ort ?>" size="50">
          </td>
        </tr>
        <tr bgcolor="#FF0000"> 
          <td> 
            <input type="text" name="datum" value="<? echo $datum ?>" size="50">
          </td>
        </tr>
        <tr bgcolor="#FF0000"> 
          <td> 
            <select name="rasse" size="1">
              <? foreach($rasse as $nr => $entry)
            {
            $nr == $rasse_default ?
                $default = 'selected' : $default = '';
            echo "<option $default
                    value=\"$nr\">$entry</option>\n";
                    }
                    ?>
            </select>
          </td>
        </tr>
        <tr bgcolor="#999966"> 
          <td> 
            <p> 
              <select name="vorname">
                <? foreach($vorname as $nr => $entry)
            {
            $nr == $vorname_default ?
                $default = 'selected' : $default = '';
            echo "<option $default
                    value=\"$nr\">$entry</option>\n";
                    }
                    ?>
              </select>
              <input type="text" name="name" value="<? echo $name ?>" size="50">
            </p>
          </td>
        </tr>
        <tr bgcolor="#999966"> 
          <td> 
            <select name="klasse">
              <? foreach($klasse as $nr => $entry)
            {
            $nr == $klasse_default ?
                $default = 'selected' : $default = '';
            echo "<option $default
                    value=\"$nr\">$entry</option>\n";
                    }
                    ?>
            </select>
          </td>
        </tr>
        <tr bgcolor="#999966"> 
          <td> 
            <textarea name="ergebnis" cols="50"><? echo $ergebnis ?></textarea>
          </td>
        </tr>
        <tr bgcolor="#999933"> 
          <td> 
            <select name="vorname1">
              <? foreach($vorname1 as $nr => $entry)
            {
            $nr == $vorname_default1 ?
                $default = 'selected' : $default = '';
            echo "<option $default
                    value=\"$nr\">$entry</option>\n";
                    }
                    ?>
            </select>
            <input type="text" name="name1" value="<? echo $name1 ?>" size="50">
          </td>
        </tr>
        <tr bgcolor="#999933"> 
          <td> 
            <select name="klasse1">
              <? foreach($klasse1 as $nr => $entry)
            {
            $nr == $klasse_default1 ?
                $default = 'selected' : $default = '';
            echo "<option $default
                    value=\"$nr\">$entry</option>\n";
                    }
                    ?>
            </select>
          </td>
        </tr>
        <tr bgcolor="#999933"> 
          <td> 
            <textarea name="ergebnis1" cols="50"><? echo $ergebnis1 ?></textarea>
          </td>
        </tr>
        <tr bgcolor="#999966"> 
          <td> 
            <select name="vorname2">
              <? foreach($vorname2 as $nr => $entry)
            {
            $nr == $vorname_default2 ?
                $default = 'selected' : $default = '';
            echo "<option $default
                    value=\"$nr\">$entry</option>\n";
                    }
                    ?>
            </select>
            <input type="text" name="name2" value="<? echo $name2 ?>" size="50">
          </td>
        </tr>
        <tr bgcolor="#999966"> 
          <td> 
            <select name="klasse2">
              <? foreach($klasse2 as $nr => $entry)
            {
            $nr == $klasse_default2 ?
                $default = 'selected' : $default = '';
            echo "<option $default
                    value=\"$nr\">$entry</option>\n";
                    }
                    ?>
            </select>
          </td>
        </tr>
        <tr bgcolor="#999966"> 
          <td> 
            <textarea name="ergebnis2" cols="50"><? echo $ergebnis2 ?></textarea>
          </td>
        </tr>
        <tr bgcolor="#999900"> 
          <td> 
            <select name="vorname3">
              <? foreach($vorname3 as $nr => $entry)
            {
            $nr == $vorname_default3 ?
                $default = 'selected' : $default = '';
            echo "<option $default
                    value=\"$nr\">$entry</option>\n";
                    }
                    ?>
            </select>
            <input type="text" name="name3" value="<? echo $name3 ?>" size="50">
          </td>
        </tr>
        <tr bgcolor="#999900"> 
          <td> 
            <select name="klasse3">
              <? foreach($klasse3 as $nr => $entry)
            {
            $nr == $klasse_default3 ?
                $default = 'selected' : $default = '';
            echo "<option $default
                    value=\"$nr\">$entry</option>\n";
                    }
                    ?>
            </select>
          </td>
        </tr>
        <tr bgcolor="#999900"> 
          <td> 
            <textarea name="ergebnis3" cols="50"><? echo $ergebnis3 ?></textarea>
          </td>
        </tr>
        <tr bgcolor="#999966"> 
          <td height="35"> 
            <input type="submit" name="submit" value="Datens&auml;tze speichern">
            <input type="reset" name="Zur&uuml;cksetzen" value="Alle Dates&auml;tze l&ouml;schen">
          </td>
        </tr>
      </table>
    </form>
    <?
    }
    ?>
    <p><a href="view.php">Daten ansehen</a></p></body>
    </html>

    Geht das so?? Wenn ja, warum speichert er dann die daten nicht in der datenbank?? Er schreibt immer nur ARRAY oder eine Zahl.

  • #2
    Re: ARRAY in Datenbank speichern

    wie schwer ist es denn zu verstehen, dass es keinen sinn hat, ein forum mit ellenlangem code zuzuscheissen?

    du hast ein problem mit dem eintragen von arrays in eine datenbank, also hätten array-definitionen und der teil, wo du in die DB schreibst, doch höchstwahrscheinlich ausgereicht, dein ganzes HTML-geraffel bei der ausgabe interessiert doch keinen ...

    Original geschrieben von blueweb
    PHP-Code:
    $sql "INSERT INTO test (ort,datum,rasse,vorname,name,klasse,ergebnis,vorname1,name1,klasse1,ergebnis1,vorname2,name2,klasse2,ergebnis2,vorname3,name3,klasse3,ergebnis3) VALUES ('$ort','$datum','$rasse','$vorname','$name','$klasse','$ergebnis','$vorname1','$name1','$klasse1','$ergebnis1','$vorname2','$name2','$klasse2','$ergebnis2','$vorname3','$name3','$klasse3','$ergebnis3')";
    $result mysql_query($sql,$db); 
    Geht das so?? Wenn ja, warum speichert er dann die daten nicht in der datenbank?? Er schreibt immer nur ARRAY oder eine Zahl.
    nein, das geht so natürlich nicht.

    echo $array; wird immer nur den typ, nämlich "array" ausgeben (wenn $array ein array ist ...)

    aus einem array musst du dir deine daten erst mal rausholen.
    $array[13] oder auch $array['werner'] bei einem assoziativen array.

    und wahrscheinlich willst du doch mehrere datensätze für deine unterschiedlichen rassen, vornamen etc. anlegen, oder?
    dann brauchst du auch mehrere insert queries ...
    könnte sich dann u.U. anbieten, die arrays in schleife zu durchlaufen.

    oder du willst wirklich alle daten in einen datensatz packen, dann kannst du z.b. ein array vorher mit serialize() in einen string umwandeln (aber sinn hat das hier wohl keinen).


    also, überlege dir erst mal ein bisschen genauer, was du eigentlich vorhast, und dann, wie du es umsetzen kannst.
    Zuletzt geändert von wahsaga; 09.01.2004, 08:10.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Du kannst auch alles in ein Objekt packen und das dann mit serialize() bzw. unserialize(); hin und her verändern... Dann brauchst Du nur ein Feld in der Datenbank....
      [font=verdana] '][' .... düdeldüdel dü

      Gruss Socket
      -----
      Nein, ich programmiere kein Clan-Script für Dich, nein, auch nicht wenn Deine Schwester gut aussieht!
      [color=darkblue]
      Socket Funktionen[/color]
      [/font]

      Kommentar

      Lädt...
      X