Upload funktioniert, Eintrag in DB nicht!

tesarolle

Mitglied
Hallo Leute,

mein Problem ist folgendes:

Ich habe ein Formar mit einem Textfeld in das man z.B. einen Benutzernamen einträgt und eben das Upload feld.

Ich lade über dieses Formular eine Datei hoch und trage beim Benutzernamen text ein. Zumindest der Upload funktioniert wunderbar. Die Datei liegt dort wo sie hin soll.

Das Problem ist nun das aber nichts in die DB geschrieben wird! Beim Benutzernamen steht nix! Der Upload und es sieht so aus als funktioniert alles aber in meine DB wird nichts geschrieben! Das ist das erste Problem!

Das zweite Problem ist, das ich nach dem Upload die Datei umbenennen möchte und zwar so wie den Benutzernamen und mit einer Nummer also z.B. Benutzername ist "Hans" dann soll beim ersten Upload die Datei "Hans1" heissen. Beim zweiten dann "Hans2" usw.!

Hier mein Quellcode, ich weiss einfach nicht was ich daran ändern soll!?

Bitte antwortet nur wenn ihr das schonmal gemacht habt und Euch damit auskennt!

STARTFORMULAR.HTML
HTML:
<html>
<head><title>PHP workshop on form management: impressions.html</title><head>
<body>


<form enctype="multipart/form-data" method="post" action="daten_checken.php">
Your name : <input type="text" name="nom"><br>

Bild hochladen: <input type="file" name="file"><br> 


<br><br>
<input type="submit" name="valider" value="Send">
</form>


</body>
</html>


daten_checken.php
PHP:
<html>
<head><title>Daten überprüfen udn in DB schreiben</title><head>
<body>

<?php

$nom=$_POST['nom'];
$ip=$_SERVER["REMOTE_ADDR"];
$host=gethostbyaddr($ip);


include_once("includes/connect.php"); 



$sql = "INSERT INTO datensatz ( id , nom , date, time, ip, host,)
VALUES ('', '$nom', now(), now(), '$ip', '$host')";
mysql_query($sql, $db);


include ("upload.php"); 


print("                   VIELEN DANK FÜR IHRE EINGABEN                    ") ;



?>

</body>
</html>


Meine Tabelle in der MYSQL-DB:

id smallint(5) unsigned
bild varchar(120)
nom varchar(128)
date date
time time
ip varchar(20)
host varchar(30)
STAMP timestamp(14)
 
Zuletzt bearbeitet:
Schaut eigentlich ganz ok aus de Code. Versuch doch mal anstatt in die DB zu schreiben die Daten mit "echo" auszugeben. Dann kannst schon mal aussschliessen dass die Daten nicht ankommen.
Und häng mal an dein mysql_query(...) ein "or die ("Eintrag nicht möglich")" dran. Dann bekommst direkt die Meldung wenn nix eingetragen wird. Sollte das der Fall sein, dann kannst mit mysql_error() die Fehlermeldung abfangen.
 
Ich habe das Echo für die $nom Variable eingetragen, dann wird auch der inhalt der variable (also meine Eingabe in das Textfeld) angezeigt, ich verseht nur nicht warum das dann nicht auch so in die Tabelle meiner Datenbank eingetragen wird?

Als ich das Upload Feld noch nicht in meinem Form hatte, hat es immer funktioniert!

Es muss also damit zusammen hängen das ich nun ein Upload Feld mit im Formular habe!

Aber wo soll ich denn hier anfangen einen Fehler zu suchen wenn alles gut aussieht?


PHP:
<html>
<head><title>PHP workshop for form management: ajoutimp.php</title><head>
<body>

<?php

$nom=$_POST['nom'];
$ip=$_SERVER["REMOTE_ADDR"];
$host=gethostbyaddr($ip);


include_once("includes/connect.php"); 

 

$sql = "INSERT INTO datensatz ( id , nom , date, time, ip, host,)
VALUES ('', '$nom', now(), now(), '$ip', '$host')";
mysql_query($sql, $db);
echo "$nom";

include ("upload.php"); 


print("                   VIELEN DANK FÜR IHRE EINGABEN                    ") ;



?>

</body>
</html>
 
Was mich gerade wundert, warum sagst du bei INSERT INTO dass er auch eine ID eintragen soll. Das macht doch PHPMyAdmin selber!
 
Wenn die Daten per echo abrufbar sind dann muss es am DB Eintrag liegen und nicht am Formularfeld.

Mach mal hinter mysql_quer ein "or die (mysql_error())"
 
Hallo Chocobane!

wenn ich das mache kommt die folgende Fehlermeldung:

Fehler in der Syntax bei ') VALUES ('', 'TESTNAME', now(), now(), '10.1.11.141', 'org280.' in Zeile 1.
 
Das ist der Hammer! Das war es *FUCK KOMA!* :)!

Weißt Du jetzt noch wie ich den BIldnamen in mein Feld "Bild" eintragen kann?
 
Zurück