php/mysql problem beim eintragen in die db

05/14/2011 23:32 JacK le chilla#1
hey,

habe folgendes prob: es kommt kein error aber es wird auch nichts in die db eingetragen was ist falsch ?

$con = mysql_connect("","z3r024","z3r024");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("z3r024'", $con);
mysql_query("INSERT INTO
Itemshop(Itemname, Beschreibung, Preis, Bildpfad)
VALUES
(".$Itemname.", ".$Beschreibung.", ".$Preis.", ".$Bildpfad.")");
echo 'Item wurde Eingetragen';

Und item wurde eingetragen kam auch nicht :(

mfg JacK
05/15/2011 09:10 LostHope.#2
Quote:
Originally Posted by JacK le chilla View Post
hey,

habe folgendes prob: es kommt kein error aber es wird auch nichts in die db eingetragen was ist falsch ?



Und item wurde eingetragen kam auch nicht :(

mfg JacK
PHP Code:
    $con mysql_connect("localhost"/* siehe #1 */,"z3r024","z3r024") or die('Could not connect: ' mysql_error()/* siehe #2 */);

    
mysql_select_db("z3r024") or die(mysql_error()/* falls die DB falsch ist */);
    
mysql_query("INSERT INTO
    Itemshop(Itemname, Beschreibung, Preis, Bildpfad)
    VALUES
    ('
$Itemname', '$Beschreibung', '$Preis', '$Bildpfad'/* siehe #3,#4 */)") or die(mysql_error());
    echo 
'Item wurde Eingetragen'
Falsch:
  1. In mysql_connect gehört immer an erster Stelle der Host, ich denke es wird bei dir localhost sein
  2. Lass das if Statement weg und schreib stattdessen "or", das wird die Ladezeit verkürzen, denn ein if Statement wird immer durchlaufen und dein "or" nur, wenn die Verbindung zur DB FALSE ist.
  3. Bei dem query ist es sehr wichtig, dass du nicht während des querys noch ein " benutzt, denn dann wird die funktion beendet.
  4. Punkte braucht man im query auch nicht, da es SQL und nicht PHP Sprache ist.
05/15/2011 11:46 JacK le chilla#3
danke :)
hat mir gleich bei mehrern problemen geholfen fettes thx ;)
05/15/2011 14:10 .Marcel'#4
Ich würde dir noch empfehlen den query zu prüfen, ob der auch "Erfolgreich " oder "Fehlgeschlagen" ist.

Das geht so :
du musst aber vorher die variable $query anlegen.
So sollte es aussehen :
PHP Code:
$query mysql_query("INSERT INTO
    Itemshop(Itemname, Beschreibung, Preis, Bildpfad)
    VALUES
    ('
$Itemname', '$Beschreibung', '$Preis', '$Bildpfad'/* siehe #3,#4 */)") or die(mysql_error()); 
PHP Code:
if($query){
echo
"Eintrag Erfolgreich";
}else{
echo
"Eintrag Fehlgeschlagen";

05/15/2011 14:39 LostHope.#5
Quote:
Originally Posted by ჩanana :3 View Post
Ich würde dir noch empfehlen den query zu prüfen, ob der auch "Erfolgreich " oder "Fehlgeschlagen" ist.

Das geht so :
du musst aber vorher die variable $query anlegen.
So sollte es aussehen :
PHP Code:
$query mysql_query("INSERT INTO
    Itemshop(Itemname, Beschreibung, Preis, Bildpfad)
    VALUES
    ('
$Itemname', '$Beschreibung', '$Preis', '$Bildpfad'/* siehe #3,#4 */)") or die(mysql_error()); 
PHP Code:
if($query){
echo
"Eintrag Erfolgreich";
}else{
echo
"Eintrag Fehlgeschlagen";

Dann würde ich noch prüfen ob alle Sachen eingegeben worden sind(falls es ein Formular ist.
05/18/2011 18:19 JacK le chilla#6
ja danke ^^ das hatte ich zwar schon aber danke für eure mühe der Thread kann geclosed werden :)