PHP Newbie Frage ;) [Datenbank Eintrag]

FactorX

Mitglied
Da ich gerade noch am Anfang bin mit PHP zu programmieren hab ich eine für euch wahrscheinlich ganz einfache frage :)

Also:
Ich möchte durch ein Formular Daten in eine mySQL Datenbank eintragen.
Wie muss ich das Formular Einstellen? D.h. :

<form action=" ??? " ... </form>

und die Input Felder/Checkboxen etc...

<input name=" ??? " ... >
 
Hi,

Deine Frage ist also, wie Du die Daten aus dem Formular in das Skript bekommst? oder wie Du es dann in die Datenbank bekommst?

Die Daten eines Formulars werden bei PHP direkt übernommen. Alle Formularfelder werden dabei in Variablen "umgewandelt", wobei der Name des Formularfeldes dann auch der Name der Variablen ist:
Code:
<FORM ACTION="meinscript.php" METHOD="Post">
   <INPUT TYPE="text" NAME="feld1">
   <INPUT TYPE="text" NAME="feld2">
   <INPUT TYPE="text" NAME="feld3">
   <INPUT TYPE="Submit">
</FORM>
Bei Klick auf den Submit-Button wird das Skript "meinkript.php" aufgerufen, und in dem Skript gibt es dann die Variablen $feld1, $feld2 und $feld3 mit den Inhalten der Textfelder.
Diese kannst Du dann bearbeiten und z.B. in eine Datenbank schreiben.

Es gibt mehrere Arten von Datenbanken, die PHP direkt unterstützt. Die am häufigsten benutzte ist MySQL. Hier findest Du ein MySQL Handbuch .

hoffe das hilft, wenn nicht: einfach nochmal melden :)

----------[ edit by dunsti ]----------

ach ja ... hattest ja geschrieben, daß es sich um eine MySQL-Datenbank handelt. :rolleyes:
hier noch ein Link für Dich: PHP Handbuch - MySQL-Funktionen

----------[ edit by dunsti ]----------

Gruß
Dunsti
 
Danke! Das hat schonmal funktioniert :)
Jetzt hab ich noch eine Frage:

Ich habe nun schon zwei Reihen in die mySQL Datenbank eingetragen... nun habe ich versucht diese Einträge mittels mysql_query wieder herauszulesen. Aber es tritt bei mir irgendein Syntaxfehler auf - ich vermute es liegt daran, dass er in der HTML Tabelle nicht selbstständig eine neue Zeile anlegen kann. Hier ist mal der Code:

Code:
<html>
<head>
<title>clanwars table</title>
</head>
<body>
<div align="center">
  <center>
  <table border="0" width="100%">
    <tr>
      <td align=center><b>ID</b></td>
      <td align=center><b>Opponent</b></td>
      <td align=center><b>1. Hz</b></td>
      <td align=center><b>2. Hz</b></td>
      <td align=center><b>Game</b></td>
      <td align=center><b>Mod</b></td>
      <td align=center><b>Res.</b></td>
      <td align=center><b>Date</b></td>
      <td align=center><b>stats</b></td>
    </tr>
    <tr>
      <?php
       $db = mysql_connect("localhost","root");
       mysql_select_db("masterblasters",$db);
       $result = mysql_query("SELECT * FROM clanwars",$db);
       while ($myrow = mysql_fetch_row($result)) {

       echo "<td align=center>"; printf("%s", $myrow[0]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[1]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[2]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[3]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[4]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[5]); echo "</td>";
       echo "<td align=center>"; printf("%s", $myrow[2]+$myrow[3]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[6]); echo "</td>";
       echo "<td align=center>"; printf("%s", $myrow[7]); echo "</td>"; }
    echo <<<NEXTROW // Hier vermute ich irgendwo den Fehler
    </tr>
    <tr>
            NEXTROW;
       echo "<td align=center>"; printf("%s", $myrow[8]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[9]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[10]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[11]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[12]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[13]); echo "</td>";
       echo "<td align=center>"; printf("%s", $myrow[10]+$myrow[11]); echo "</td>"; 
       echo "<td align=center>"; printf("%s", $myrow[14]); echo "</td>";
       echo "<td align=center>"; printf("%s", $myrow[15]); echo "</td>"; }
      ?>
</body>
</html>
 
ja klar :)

bei dem echo, der die <TR>-Tags erzeugt fehlen "" (Anführungszeichen)

echo "</TR>\n<TR>";

Gruß
Dunsti
 
Hmm ... gut - und jetzt ist der fehler am ende der letzten Zelle

also bei

PHP:
echo "<td align=center>"; printf("%s", $myrow[15]); echo "</td>"; }
?>

ich werd noch wahnsinnig :>
 
schau mal genau ... die geschweifte Klammer-Zu (von dem While) kommt doppelt !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! (einmal ganz am Ende und schon vor den <TR>-Tags)

Kleinigkeiten, aber die findet man meist am schwersten :p

hab mittlerweile ein geschultes Auge dafür, weil ich diese Art Fehler auch immer mach.

Gruß
Dunsti
 

Neue Beiträge

Zurück