WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Fehlermeldung PHP Formular (http://www.wcm.at/forum/showthread.php?t=240200)

Honk 19.09.2010 13:15

Fehlermeldung PHP Formular
 
Hallo Leute
Ich habe in einem Dreamweaver Formular unter anderem 4 Optionsschalter eingebaut. Leider gibt es da zwei Probleme:
1) ich kann im Formular den Button zwar aktivieren, aber nicht mehr deaktivieren
2) (größeres Problem) ich erhalte beim wegschicken an die mysql Datenbank folgende Fehlermeldung sofern der Button nicht aktiviert wurde:
Notice: Undefined index: vernissagen in /home/.sites/97/site853/web/xxx/k/php_dateien/send_at.php on line 13

Hier die Zeilen aus dem Formular bzw. aus dem script:
PHP-Code:

$mysqlhost "xxxxxxxxxxxxxxx";
$mysqluser "xxxxxx";
$mysqlpwd "xxxxx";
$mysqldb "xxxx";
$mysqltabelle "xxx";
$location $_POST["location"];
$musik $_POST["musik"];
$vernissagen $_POST["vernissagen"];
$event $_POST["event"];
$lesung $_POST["lesung"];
$vorname $_POST["vorname"];
$name $_POST["name"];
$strasse $_POST["strasse"];
$plz $_POST["plz"];
$ort $_POST["ort"];
$jahr $_POST["jahr"];
$email $_POST["email"];
$resource mysql_connect($mysqlhost$mysqluser$mysqlpwd) or die ("Keine Verbindung zum Server moeglich");
mysql_select_db($mysqldb$resource) or die ("Die Datenbank existiert nicht");  
$eintrag "INSERT INTO $mysqltabelle (location, musik, vernissagen, event, lesung, vorname, name, strasse, plz, ort, jahr, email) VALUES ('$location', '$musik', '$vernissagen', '$event', '$lesung', '$vorname', '$name', '$strasse', '$plz', '$ort', '$jahr', '$email')";  
$eintragen mysql_query($eintrag)
or die (
mysql_error());  ;
//echo $eintrag;
{
echo 
"<b>VIELEN DANK FÜR IHRE ANMELDUNG ZUM xxxxxx - NEWSLETTER!</b>";} 

(es geht um die Zeilen "Musik, Vernissagen, Events, Lesungen" > die haben den Optionsschalter)

HTML-Code:

<input type="radio" name="musik" id="musik" value="musik" />
                  (Live) Musik                      <br />
                  <input type="radio" name="vernissagen" id="vernissagen" value="vernissagen" />                 
                  Vernissagen<br />
                  <input type="radio" name="event" id="event" value="event" />
                  Themenevents<br />
                  <input type="radio" name="lesung" id="lesung" value="lesung" />
                  Lesungen</span></p></td>


Wahrscheinlich sehe ich den Wald vor lauter Bäume nicht .... :rolleyes:
THX
Honk

Philipp 19.09.2010 13:36

So sollte es funktionieren:

PHP-Code:

<?php

$mysqlhost 
"xxxxxxxxxxxxxxx";
$mysqluser "xxxxxx";
$mysqlpwd "xxxxx";
$mysqldb "xxxx";
$mysqltabelle "xxx";
$resource mysql_connect($mysqlhost$mysqluser$mysqlpwd) or die ("Keine Verbindung zum Server moeglich");
mysql_select_db($mysqldb$resource) or die ("Die Datenbank existiert nicht"); 

$location = ($_POST["location"]) ? mysql_real_escape_string($_POST["location"]) : "";
$musik = ($_POST["musik"]) ? mysql_real_escape_string($_POST["musik"]) : "";
$vernissagen = ($_POST["vernissagen"]) ? mysql_real_escape_string($_POST["vernissagen"]) : "";
$event = ($_POST["event"]) ? mysql_real_escape_string($_POST["event"]) : "";
$lesung = ($_POST["lesung"]) ? mysql_real_escape_string($_POST["lesung"]) : "";
$vorname = ($_POST["vorname"]) ? mysql_real_escape_string($_POST["vorname"]) : "";
$name = ($_POST["name"]) ? mysql_real_escape_string($_POST["name"]) : "";
$strasse = ($_POST["strasse"]) ? mysql_real_escape_string($_POST["strasse"]) : "";
$plz = ($_POST["plz"]) ? mysql_real_escape_string($_POST["plz"]) : "";
$ort = ($_POST["ort"]) ? mysql_real_escape_string($_POST["ort"]) : "";
$jahr = ($_POST["jahr"]) ? mysql_real_escape_string($_POST["jahr"]) : "";
$email = ($_POST["email"]) ? mysql_real_escape_string($_POST["email"]) : "";

$eintrag "INSERT INTO $mysqltabelle (location, musik, vernissagen, event, lesung, vorname, name, strasse, plz, ort, jahr, email) VALUES ('$location', '$musik', '$vernissagen', '$event', '$lesung', '$vorname', '$name', '$strasse', '$plz', '$ort', '$jahr', '$email')";  
mysql_query($eintrag) or die (mysql_error());

echo 
"<b>VIELEN DANK FÜR IHRE ANMELDUNG ZUM xxxxxx - NEWSLETTER!</b>";

?>


athropos 19.09.2010 14:01

Servus!

Was genau fragst du mit dem Formular ab?
Radiobuttons sind für eine Entweder/Oder (Einfachauswahl) Frage gedacht (dafür müsste allerdings der "name"-tag identisch sein, damit der Browser die Zusammengehörigkeit feststellen kann.
Für eine Mehrfachauswahl solltest du statt Radiobuttons Checkboxen (type="checkbox") verwenden, dazu passt dann Philipps Code auch perfekt.

lG

Honk 20.09.2010 13:59

super, danke, hat funktioniert :-)


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:14 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag