In MySQL-Tabelle schreiben

RTS

Mitglied
Ich habe folgendes Problem ... ich habe eine PHP Siete:

PHP:
<?php
session_start();
?>

<?php
if(!isset($_SESSION["username"]))
   {
   echo "Bitte erst <a href=\"login.html\">einloggen</a>";
   exit;
   };
include '../_connect_.php';
?>

<?php
$videotitel = $_POST["videotitel"];
$videolaenge = $_POST["videolaenge"];
$videointerpret = $_POST["videointerpret"];
$adminname = $_POST["adminname"];
$videogroesse = $_POST["videogroesse"];
$videokategorie = $_POST["videokategorie"];
$videorelease = $_POST["videorelease"];
$videodownloadhq = $_POST["videodownloadhq"];
$videodownloadlq = $_POST["videodownloadlq"];
?>

<table>
<tr><td width="110px"><b>Titel:</b></td><td><?php echo "$videotitel" ?></td></tr>
<tr><td><b>Länge:</b></td><td><?php echo "$videolaenge" ?></td></tr>
<tr><td><b>Interpret:</b></td><td><?php echo "$adminname" ?></td></tr>
<tr><td><b>Größe:</b></td><td><?php echo "$videogroesse" ?></td></tr>
<tr><td><b>Kategorie:</b></td><td><?php echo "$videokategorie" ?></td></tr>
<tr><td><b>Release:</b></td><td><?php echo "$videorelease" ?></td></tr>
<tr><td><b>Download (HQ):</b></td><td><?php echo "$videodownloadhq" ?></td></tr>
<tr><td><b>Download (LQ):</b></td><td><?php echo "$videodownloadlq" ?></td></tr>

<?php
$eintrag = "INSERT INTO videos (videotitel, videolaenge, videointerpret, adminname, videogroesse,
			videokategorie, videorelease, videodownloadhq, videodownloadlq)
			VALUES ('$videotitel', '$videolaenge','$videointerpret', '$adminname','$videogroesse,
			$videokategorie, $videorelease, videodownloadhq, videodownloadlq')";
$eintragen = mysql_query($eintrag);
if($eintragen == true)
   {
   echo "<tr><td><br>Eintrag war erfolgreich</td></tr>";
   }
else
   {
   echo "<tr><td><br>Fehler beim Speichern</td></tr>";
   }
?>
</table>

Das Problem ist das die Daten nicht in die Tabelle geschrieben werden.
Ich bekomme nur meine programmierte Fehlermeldung:
"Fehler beim speichern"
...
was stimmt nicht mit dem Code?
 
Ich habe folgendes Problem ... ich habe eine PHP Siete

:D Das ist schon hart! Mein Beileid.

Nutze statt
PHP:
$eintragen = mysql_query($eintrag);
dieses
PHP:
mysql_query($eintrag) or die(mysql_error());
Und zeige die Ausgabe hier. Unter Umständen ist deine Anweisung falsch.

Jop. Da fehlen einfache Anführungsstriche für jede Angabe:
$videogroesse, $videokategorie, $videorelease, videodownloadhq, videodownloadlq

Nachholen ;)
 
Zuletzt bearbeitet:
Hi,
da fehlen Hochkommata.

PHP:
$eintrag = "INSERT INTO videos (videotitel, videolaenge, videointerpret, adminname, videogroesse,
            videokategorie, videorelease, videodownloadhq, videodownloadlq)
            VALUES ('$videotitel', '$videolaenge','$videointerpret', '$adminname','$videogroesse,
            $videokategorie, $videorelease, videodownloadhq, videodownloadlq')";
 
:-) Stimmt ... geil geschrieben ... nakja egal

Also ich hab jetzt mal nen paar Fehler behoben und bekomme jetzt folgenden Fehler:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' videogroesse, videokategorie, videorelease, videodownloadhq, videodownloadl' at line 1

Außerdem wird bei den <select> Objekten nur "html" ausgegeben ...

Hier meine Eingabe-Seite:

PHP:
<?php
session_start();
?>

<?php
if(!isset($_SESSION["username"]))
   {
   echo "Bitte erst <a href=\"login.html\">einloggen</a>";
   exit;
   };
include '../_connect_.php';
?>

<form action="add-video2.php" method="post"><table><tr><td>
<b><u>Video hinzufügen</u></b></td></tr>
<tr><td width="160px">Videotitel:</td><td>
<input type="text" name="videotitel" size="50" maxlength="100"/></td></tr>
<tr><td>Videolänge (xx<b>:</b>xx):</td><td>
<input type="text" name="videolaenge" size="5" maxlength="5"/> Min.</td></tr>
<tr><td>Interpreten:</td><td>
<select type="text" name="videointerpret">
<?php
$abfrage = "SELECT adminname FROM admins ORDER BY adminname";
$ergebnis = mysql_query($abfrage);
echo "<b>Kategorien</b><br>";
while($row = mysql_fetch_object($ergebnis))
   {
   echo "<option value=\"html\">$row->adminname</option><br>";
   };
?>
</select></td></tr>
<tr><td>Videogröße:</td><td>
<input type="text" name="videogroesse" size="3" maxlength="3"/> MB</td></tr>
<tr><td>Videokategorie:</td><td>
<select type="text" name="videokategorie">
<?php
$abfrage = "SELECT kategoriename FROM kategorien ORDER BY kategoriename";
$ergebnis = mysql_query($abfrage);
echo "<b>Kategorien</b><br>";
while($row = mysql_fetch_object($ergebnis))
   {
   echo "<option value=\"html\">$row->kategoriename</option><br>";
   };
?>
</select></td></tr>
<p>
</p>
<tr><td>Release (TT.MM.JJJJ):</td><td>
<input type="text" name="videorelease" size="10" maxlength="10"/></td></tr>
<tr><td>Download (High Quality):</td><td>
<input type="text" name="videodownloadhq" size="50" maxlength="150"/></td></tr>
<tr><td>Download (Low Quality):</td><td>
<input type="text" name="videodownloadlq" size="50" maxlength="150"/></td></tr>
<tr><td><input type="submit"/></td></tr>
</table></form>

Und hier meine Ausgabe-Einschreibe-Seite:
PHP:
<?php
session_start();
?>

<?php
if(!isset($_SESSION["username"]))
   {
   echo "Bitte erst <a href=\"login.html\">einloggen</a>";
   exit;
   };
include '../_connect_.php';
?>

<?php
$videotitel = $_POST["videotitel"];
$videolaenge = $_POST["videolaenge"];
$videointerpret = $_POST["videointerpret"];
$videogroesse = $_POST["videogroesse"];
$videokategorie = $_POST["videokategorie"];
$videorelease = $_POST["videorelease"];
$videodownloadhq = $_POST["videodownloadhq"];
$videodownloadlq = $_POST["videodownloadlq"];
?>

<table>
<tr><td width="110px"><b>Titel:</b></td><td><?php echo "$videotitel" ?></td></tr>
<tr><td><b>Länge:</b></td><td><?php echo "$videolaenge" ?></td></tr>
<tr><td><b>Interpret:</b></td><td><?php echo "$videointerpret" ?></td></tr>
<tr><td><b>Größe:</b></td><td><?php echo "$videogroesse" ?></td></tr>
<tr><td><b>Kategorie:</b></td><td><?php echo "$videokategorie" ?></td></tr>
<tr><td><b>Release:</b></td><td><?php echo "$videorelease" ?></td></tr>
<tr><td><b>Download (HQ):</b></td><td><?php echo "$videodownloadhq" ?></td></tr>
<tr><td><b>Download (LQ):</b></td><td><?php echo "$videodownloadlq" ?></td></tr>

<?php
$eintrag = "INSERT INTO videos (videotitel, videolaenge, videointerpret,, videogroesse,
			videokategorie, videorelease, videodownloadhq, videodownloadlq)
			VALUES ('$videotitel', '$videolaenge','$videointerpret','$videogroesse,
			$videokategorie, $videorelease, $videodownloadhq, $videodownloadlq')";
mysql_query($eintrag) or die(mysql_error()); 
if($eintragen == true)
   {
   echo "<tr><td><br>Eintrag war erfolgreich</td></tr>";
   }
else
   {
   echo "<tr><td><br>Fehler beim Speichern</td></tr>";
   }
?>
</table>
 
Hi,
da fehlen Hochkommata.

PHP:
$eintrag = "INSERT INTO videos (videotitel, videolaenge, videointerpret, adminname, videogroesse,
            videokategorie, videorelease, videodownloadhq, videodownloadlq)
            VALUES ('$videotitel', '$videolaenge','$videointerpret', '$adminname','$videogroesse,
            $videokategorie, $videorelease, videodownloadhq, videodownloadlq')";

öhm immernoch xD
 
Zuletzt bearbeitet:
PHP:
$eintrag = "INSERT INTO videos (videotitel, videolaenge, videointerpret, adminname, videogroesse,
            videokategorie, videorelease, videodownloadhq, videodownloadlq)
            VALUES ('$videotitel', '$videolaenge', '$videointerpret', '$adminname', '$videogroesse',
            '$videokategorie', '$videorelease', '$videodownloadhq', '$videodownloadlq')";
voila
und
PHP:
<?php
$abfrage = "SELECT adminname FROM admins ORDER BY adminname";
$ergebnis = mysql_query($abfrage);
echo "<b>Kategorien</b><br>";
while($row = mysql_fetch_object($ergebnis))
   {
   echo '<option value="html_'.$row->adminname.'">'.$row->adminname.'</option><br>';
   };
?>
so evt. ? weiss ja nicht was du im value haben möchtest. Sollte eigentlich egal sein oder vertue ich mich da? Denke du kannst das html_ auch weglassen.
 
Zuletzt bearbeitet:
Na ganz einfach ich habe die <select> Objekte eingefügt ... die Auswahl der Objekte lese ich aus einer anderen Tabelle aus ...

sprich alle die in der admintabelle sind sollen da ausgewählt werden können ...
 
Soweit so gut nur noch eine kleine Fehlermeldung:p ...

Unknown column 'adminname' in 'field list'

Sonst sieht esschon ganz gut aus hier jetzt nochmal die überarbeitete Version:

PHP:
<?php
session_start();
?>

<?php
if(!isset($_SESSION["username"]))
   {
   echo "Bitte erst <a href=\"login.html\">einloggen</a>";
   exit;
   };
include '../_connect_.php';
?>

<form action="add-video2.php" method="post"><table><tr><td>
<b><u>Video hinzufügen</u></b></td></tr>
<tr><td width="160px">Videotitel:</td><td>
<input type="text" name="videotitel" size="50" maxlength="100"/></td></tr>
<tr><td>Videolänge (xx<b>:</b>xx):</td><td>
<input type="text" name="videolaenge" size="5" maxlength="5"/> Min.</td></tr>
<tr><td>Interpreten:</td><td>
<select type="text" name="videointerpret">
<?php
$abfrage = "SELECT adminname FROM admins ORDER BY adminname";
$ergebnis = mysql_query($abfrage);
echo "<b>Kategorien</b><br>";
while($row = mysql_fetch_object($ergebnis))
   {
   echo '<option value="'.$row->adminname.'">'.$row->adminname.'</option><br>';
   };
?>
</select></td></tr>
<tr><td>Videogröße:</td><td>
<input type="text" name="videogroesse" size="3" maxlength="3"/> MB</td></tr>
<tr><td>Videokategorie:</td><td>
<select type="text" name="videokategorie">
<?php
$abfrage = "SELECT kategoriename FROM kategorien ORDER BY kategoriename";
$ergebnis = mysql_query($abfrage);
echo "<b>Kategorien</b><br>";
while($row = mysql_fetch_object($ergebnis))
   {
   echo '<option value="'.$row->kategoriename.'">'.$row->kategoriename.'</option><br>';
   };
?>
</select></td></tr>
<p>
</p>
<tr><td>Release (TT.MM.JJJJ):</td><td>
<input type="text" name="videorelease" size="10" maxlength="10"/></td></tr>
<tr><td>Download (High Quality):</td><td>
<input type="text" name="videodownloadhq" size="50" maxlength="150"/></td></tr>
<tr><td>Download (Low Quality):</td><td>
<input type="text" name="videodownloadlq" size="50" maxlength="150"/></td></tr>
<tr><td><input type="submit"/></td></tr>
</table></form>
 
Zurück