schreiben in mysql tabelle wird nicht ausgeführt...
jens
- php
0 Udo
hallo,
ich arbeite an einen mitgliederbereich für eine seite. ich habe meinen code mehrere male gecheckt, aber sehe den fehler nicht. vielleicht hat ja einer von euch den magischen blick...
hier ist der code.
join.php mit dem formular:
<?php
include("dblib.inc");
include("memberlib.inc");
$nachricht="";
if ( isset( $aktion ) && $aktion=="join")
{
if ( empty( $form[name] ) ||
empty( $form[vorname] ) ||
empty( $form[passwort] ) ||
empty( $form[strasse] ) ||
empty( $form[hausnr] ) ||
empty( $form[plz] ) ||
empty( $form[ort] ) ||
empty( $form[land] ) ||
empty( $form[mail] ) ||
empty( $form[telpriv] ) ||
empty( $form[telmob] ) ||
empty( $form[beruf] ) ||
empty( $form[gebdat] ) )
$nachricht .= "Bitte alle Felder ausfüllen.<br>\n";
if ( $form[passwort] != $form[passwort2] )
$nachricht .= "Das Passwort stimmt nicht mit der Bestätigung überein.<br>\n";
if ( $nachricht == "" ) // keine Fehler
{
$id = neuerBenutzer( $form[vorname], $form[passwort] );
initSession( $id, $form[vorname], $form[passwort] );
header( "Location: menu.php?".SID );
exit;
}
}
?>
<html>
<head>
<title>5A forever!</title>
</head>
<body>
<?php
include("publicnav.inc");
?>
<p>
<h1>Registrieren</h1>
<?php
if ( $nachricht != "" )
{
print "<b>$nachricht</b><p>";
}
?>
<p>
<form action="<?php print $PHP_SELF;?>">
<input type="hidden" name="aktion" value="join">
<input type="hidden" name="<?php print session_name() ?>" value="<?php print session_id() ?>">
Name: <br>
<input type="text" name="form[name]" value="<?php print $form[name] ?>" maxlength=20>
</p>
<p>
Vorname: <br>
<input type="text" name="form[vorname]" value="<?php print $form[vorname] ?>" maxlength=20>
</p>
<p>
Passwort: <br>
<input type="password" name="form[passwort]" value="" maxlength=10>
</p>
<p>
Passwort-Bestätigung: <br>
<input type="password" name="form[passwort2]" value"" maxlength=10>
</p>
<p>
Strasse <br>
<input type="text" name="form[strasse]" value="<?php print $form[strasse] ?>" maxlength=50>
</p>
<p>
Nr.: <br>
<input type="text" name="form[hausnr]" value="<?php print $form[hausnr] ?>" maxlength=5>
</p>
<p>
Postleitzahl: <br>
<input type="text" name="form[plz]" value="<?php print $form[plz] ?>" maxlength=10>
</p>
<p>
Ort: <br>
<input type="text" name="form[ort]" value="<?php print $form[ort] ?>" maxlength=50>
</p>
<p>
Land: <br>
<input type="text" name="form[50]" value="<?php print $form[50] ?>" maxlength=50>
</p>
<p>
E-Mail: <br>
<input type="text" name="form[mail]" value="<?php print $form[mail] ?>" maxlength=50>
</p>
<p>
Telefon Privat: <br>
<input type="text" name="form[telpriv]" value="<?php print $form[telpriv] ?>" maxlength=20>
</p>
<p>
Telefon Mobil: <br>
<input type="text" name="form[telmob]" value="<?php print $form[telmob] ?>" maxlength=20>
</p>
<p>
Beruf: <br>
<input type="text" name="form[beruf]" value="<?php print $form[beruf] ?>" maxlength=50>
</p>
<p>
Geburtsdatum: <br>
<input type="text" name="form[gebdat]" value="<?php print $form[gebdat] ?>" maxlength=10>
</p>
<p>
ICQ#: <br>
<input type="text" name="form[icq]" value="<?php print $form[icq] ?>" maxlength=10>
</p>
<p>
<input type="submit" value="Registrieren">
</p>
</form>
</body>
</html>
hier ist dblib.inc:
<?php
$link;
connectToDB();
function connectToDB()
{
global $link;
$link = mysql_connect( "localhost", "root" );
if ( ! $link )
die( "Keine Verbindung zu MySQL" );
mysql_select_db( "db5a", $link )
or die( "Konnte Datenbank nicht öffnen: ".mysql_error() );
}
function neuerBenutzer( $name, $vorname, $passwort, $strasse, $hausnr, $plz, $ort, $land, $mail, $telpriv, $telmob, $beruf, $gebdat, $icq )
{
global $link;
$ergebnis = mysql_query( "INSERT INTO members ( name, vorname, passwort, strasse, hausnr, plz, ort, land, mail, telpriv, telmob, beruf, gebdat, icq )
VALUES('$name', '$vorname', '$passwort', '$strasse', '$hausnr', '$plz', '$ort', '$land', '$mail', '$telpriv', '$telmob', '$beruf', '$gebdat', '$icq')", $link);
mysql_query( $erbegnis, $link );
mysql_close( $link );
}
?>
und hier memberlib.inc:
<?php
session_start();
session_register( "session" );
function initSession( $id, $vorname, $passwort )
{
global $session;
$session[id] = $id;
$session[vorname] = $vorname;
$session[passwort] = $passwort;
$session[logged_in] = true;
}
?>
publicnav.inc ist unbedeutend...
ich danke und verehre denjenigen, der meinen fehler sehen kann :-)
$ergebnis = mysql_query( "INSERT INTO members ( name, vorname, passwort, strasse, hausnr, plz, ort, land, mail, telpriv, telmob, beruf, gebdat, icq )
Ich weiss nicht, ob´s richtig ist, aber muss das nicht so aussehen:
$ergebnis = mysql_query( "INSERT INTO members
( name
, vorname
, passwort
, strasse
, hausnr
, plz
, ort
, land
, mail
, telpriv
, telmob
, beruf
, gebdat
, icq
)
Bin nicht unbedingt der Spezialist dafür, ist halt nur das, was mir aufgefallen ist.
Viel Erfolg noch :)
Gruss
Udo