Page 1 of 1

Probleme mit Datenbankeintrag - Einsatz von Smarty, aber wie?

Posted: Mon Apr 30, 2007 2:02 pm
by Anna
Hallo, bin neu bei CMSms und komme einfach nicht weiter mit meinem Datenbank-Problem. Hoffe daher auf eure Hilfe.

Ich habe CMS für ein neues Projekt installiert, das funktioniert auch soweit alles.
Auf einer Seite werden per Formular Bestellabfragen gemacht und diese auf eine andere Seite per method=post übergeben.
Die Daten kommen auf der Bestätigungsseite an und werden auch ausgegeben.

Was nicht funktioniert ist der Eintrag dieser Daten in eine eigene Datenbank (nicht die CMS-Datenbanken). Der Code dazu sieht wie folgt aus.

In der Bestätigungsseite (CMS) wird der Code per

{db_verbinden}
{bestellen}

aufgerufen.


Der Tag {db_verbinden} enthält folgenden Code:

$host="localhost";
$user="";
$pwd="";


$db=mysql_connect($host,$user,$pwd) or exit ("Keine Verbindung hergestellt");
mysql_select_db("wangen-festival",$db) or exit ("Datenbank nicht geöffnet!");

echo "Die verbindung zur datenbank konnte hergestellt werden.";




Der Tag {bestellen} sieht so aus:

global $HTTP_POST_VARS;


$Anrede=$HTTP_POST_VARS['Anrede'];
$Vorname=$HTTP_POST_VARS['Vorname'];
$Namen=$HTTP_POST_VARS['Namen'];
$Strasse=$HTTP_POST_VARS['Strasse'];
$PLZ=$HTTP_POST_VARS['PLZ'];
$Ort=$HTTP_POST_VARS['Ort'];
$eMail=$HTTP_POST_VARS['eMail'];
$Anzahl=$HTTP_POST_VARS['Anzahl'];
$Zahlung=$HTTP_POST_VARS['Zahlung'];


$Summe=($Anzahl*20)+2;


$sqlbef="INSERT INTO kunde (Anrede, Vorname, Nachname, Strasse, PLZ, Anzahl, Email, Ort, Zahlung, Summe) VALUES('$Anrede', '$Vorname', '$Namen', '$Strasse', $PLZ, $Anzahl, '$eMail', '$Ort', '$Zahlung', $Summe)";
$sqlerg=mysql_query($sqlbef,$db);
                          if(!$sqlerg){
                          echo'Fehler beim Eintragen in Kunde';
                          }
                          else{
                          echo'Eintragen in Kunde hat geklappt!';
                          }
echo'   ';

...


echo 'Sehr geehrte/r '.$Anrede.' '.$Vorname.' '.$Namen.",";
echo 'Wir haben Ihre Bestellung erhalten. Die Tickets gehen an: ';
echo $Anrede.' '.$Vorname.' '.$Namen.'';
echo $Strasse.'';
echo $PLZ.' '.$Ort.'';



Wie gesagt: Die Ausgabe der Daten auf der Seite funktioniert, aber der Datenbankeintrag eben nicht. Die Fehlermeldung ist folgende:

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in c:\www\cmsmadesimple\lib\content.functions.php(669) : eval()'d code on line 18
Fehler beim Eintragen in Kunde


Wahrscheinlich muß man da irgendwas mit Smarty-Tags machen, so viel habe ich schon raus (glaube ich zumindest) aber ich weiß einfach nicht wie das geht.

Danke schon mal im Voraus für eure Hilfe.

Re: Probleme mit Datenbankeintrag - Einsatz von Smarty, aber wie?

Posted: Tue May 01, 2007 10:49 pm
by Anna
Hallo,

für alle, die das mal interessiert, habe das Problem jetzt gelöst.

Ich habe einfach einen dummen Fehler gemacht. Da $db im Tag {db_verbinden} deklariert war und nicht im Tag {bestellen} wo aber der DB-Eintrag vorgenommen wird, konnte auf der Seite nicht auf die Datenbank zugegriffen werden. habe nun beides in einen gemeinsamen Tag gesteckt und es funktioniert. Juhu.