Fehlermeldungen keine, das ist ja das problem und var_dum liefert mir derzeit auch kein ergebniss zurück habe es eben versucht zu testen.
Das Script do die beiden Insert sich befinden wird vorzeitig unterbrochen bei der Validierung der User eingaben, wie es denoch zu einträgen in der DB kommen kann ist mir schleierhaft. Auch der Grund bzw. die Stelle wo es unterbrochen wird ist noch nicht klar da Eine Rückgabe des eingabefehlers nicht erfolgt.
Wie gesagt ich stehe grade noch vor einem Rätsel was das script macht und wo es die Fehler verursacht.
Formular für User eingaben:
PHP-Code:
<form action="" method="post" name="add_new_user">
<table width="600">
<tr>
<td colspan="3" style="padding-left:200px;">Registrieren:</td>
</tr>
<tr>
<td width="200"> </td>
<td colspan="2" style="padding-left:0px;"><hr style="color:#B8C8DC0; width:400px;" /></td>
</tr><?php
if(isset($err_msg) && !empty($err_msg)) { ?>
<td width="200"> </td>
<td colspan="2" style="padding-left:0px;"> </td>
</tr>
<tr><td align="left"> </td><td colspan="2" align="left"><font color="#FF0000"><?php echo $err_msg; ?></font></td></tr>
<td width="200"> </td>
<td colspan="2" style="padding-left:0px;"> </td>
</tr>
<?php } ?>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;">Vorname:</td><td width="250"><input type="text" style="height:38px; width:248px; font-size:20px; color:#B8C8DC;" name="vorname" maxlength="30" /></td></tr>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;">Nachname:</td><td width="250"><input type="text" style="height:38px; width:248px; font-size:20px; color:#B8C8DC;" name="nachname" maxlength="30" /></td></tr>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;">Username:</td><td width="250"><input type="text" style="height:38px; width:248px; font-size:20px; color:#B8C8DC;" name="username" maxlength="20" /></td></tr>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;">e-Mail:</td><td width="250"><input type="text" style="height:38px; width:248px; font-size:20px; color:#B8C8DC;" name="email[]" maxlength="50" /></td></tr>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;">e-Mail<br /> Wiederholen:</td><td width="250"><input type="text" style="height:38px; width:248px; font-size:20px; color:#B8C8DC;" name="email[]" maxlength="50" /></td></tr>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;">Passwort:</td><td width="250"><input type="password" style="height:38px; width:248px; font-size:20px; color:#B8C8DC;" name="passwort[]" /></td></tr>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;">Passwort<br />wiederholen:</td><td width="250"><input type="password" style="height:38px; width:248px; font-size:20px; color:#B8C8DC;" name="passwort[]" /></td></tr>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;">Geschlecht:</td><td width="250"><select style="height:30px; width:248px; font-size:20px; color:#B8C8DC;" name="sex"><option value="0">------------</option><option value="männlich">männlich</option><option value="weiblich">weiblich</option></select></td></tr>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;">Geburtsdatum:</td><td width="250">
<select style="height:30px; font-size:18px; color:#B8C8DC;" name="geb_tag">
<option> 1 </option>
<option> 2 </option>
<option> 3 </option>
<option> 4 </option>
<option> 5 </option>
<option> 6 </option>
<option> 7 </option>
<option> 8 </option>
<option> 9 </option>
<option> 10 </option>
<option> 11 </option>
<option> 12 </option>
<option> 13 </option>
<option> 14 </option>
<option> 15 </option>
<option> 16 </option>
<option> 17 </option>
<option> 18 </option>
<option> 19 </option>
<option> 20 </option>
<option> 21 </option>
<option> 22 </option>
<option> 23 </option>
<option> 24 </option>
<option> 25 </option>
<option> 26 </option>
<option> 27 </option>
<option> 28 </option>
<option> 29 </option>
<option> 30 </option>
<option> 31 </option>
</select>
<select style="height:30px; font-size:18px; color:#B8C8DC;" name="geb_mon">
<option value="1."> Januar </option>
<option value="2."> Februar </option>
<option value="3."> März </option>
<option value="4."> April </option>
<option value="5."> Mai </option>
<option value="6."> Juni </option>
<option value="7."> Juli </option>
<option value="8."> August </option>
<option value="9."> September </option>
<option value="10."> Oktober </option>
<option value="11."> November </option>
<option value="12."> Dezember </option>
</select>
<select style="height:30px; font-size:18px; color:#B8C8DC;" name="geb_jahr">
<option> 1900 </option>
<option> 1901 </option>
<option> 1902 </option>
<option> 1903 </option>
<option> 1904 </option>
<option> 1905 </option>
<option> 1906 </option>
<option> 1907 </option>
<option> 1908 </option>
<option> 1909 </option>
<option> 1910 </option>
<option> 1911 </option>
<option> 1912 </option>
<option> 1913 </option>
<option> 1914 </option>
<option> 1915 </option>
<option> 1916 </option>
<option> 1917 </option>
<option> 1918 </option>
<option> 1919 </option>
<option> 1920 </option>
<option> 1921 </option>
<option> 1922 </option>
<option> 1923 </option>
<option> 1924 </option>
<option> 1925 </option>
<option> 1926 </option>
<option> 1927 </option>
<option> 1928 </option>
<option> 1929 </option>
<option> 1930 </option>
<option> 1931 </option>
<option> 1932 </option>
<option> 1933 </option>
<option> 1934 </option>
<option> 1935 </option>
<option> 1936 </option>
<option> 1937 </option>
<option> 1938 </option>
<option> 1939 </option>
<option> 1940 </option>
<option> 1941 </option>
<option> 1942 </option>
<option> 1943 </option>
<option> 1944 </option>
<option> 1945 </option>
<option> 1946 </option>
<option> 1947 </option>
<option> 1948 </option>
<option> 1949 </option>
<option> 1950 </option>
<option> 1951 </option>
<option> 1952 </option>
<option> 1953 </option>
<option> 1954 </option>
<option> 1955 </option>
<option> 1956 </option>
<option> 1957 </option>
<option> 1958 </option>
<option> 1959 </option>
<option> 1960 </option>
<option> 1961 </option>
<option> 1962 </option>
<option> 1963 </option>
<option> 1964 </option>
<option> 1965 </option>
<option> 1966 </option>
<option> 1967 </option>
<option> 1968 </option>
<option> 1969 </option>
<option> 1970 </option>
<option> 1971 </option>
<option> 1972 </option>
<option> 1973 </option>
<option> 1974 </option>
<option> 1975 </option>
<option> 1976 </option>
<option> 1977 </option>
<option> 1978 </option>
<option> 1979 </option>
<option> 1980 </option>
<option> 1981 </option>
<option> 1982 </option>
<option> 1983 </option>
<option> 1984 </option>
<option> 1985 </option>
<option> 1986 </option>
<option> 1987 </option>
<option> 1988 </option>
<option> 1989 </option>
<option> 1990 </option>
<option> 1991 </option>
<option> 1992 </option>
<option> 1993 </option>
<option> 1994 </option>
<option> 1995 </option>
<option> 1996 </option>
<option> 1997 </option>
<option> 1998 </option>
<option> 1999 </option>
<option> 2000 </option>
</select>
</td></tr>
<tr>
<td width="200"> </td>
<td colspan="2" style="padding-left:0px;"><hr style="color:#B8C8DC0; width:400px;" /></td>
</tr>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;">Sicherheitsfrage:</td><td width="250"><select style="height:30px; width:248px; font-size:20px; color:#B8C8DC;" name="sicherheitsfrage"><option value="0">------------</option>
<option value="Mein Geburtsort">Mein Geburtsort</option>
<option value="Name des ersten Klassenlehrers">Name des ersten Klassenlehrers</option>
<option value="Lieblingslehrer">Lieblingslehrer</option>
<option value="Name des ersten Partners">Name des ersten Partners</option>
</select></td></tr>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;">Antwort:</td><td width="250"><input type="text" style="height:38px; width:248px; font-size:20px; color:#B8C8DC;" name="antwort" maxlength="50" /></td></tr>
<tr>
<td width="200"> </td>
<td colspan="2" style="padding-left:0px;"><hr style="color:#B8C8DC0; width:400px;" /></td>
</tr>
<tr><td align="right"> </td><td width="150" align="right" style="height:40px;"> </td><td width="250"><input type="submit" value="Registrieren" name="reg_new_user" /></td></tr>
</table>
</form>
hier das komplette script:
PHP-Code:
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
if(!isset($_POST['reg_new_user'])) return;
if(
!isset($_POST['vorname']) ||
!isset($_POST['nachname']) ||
!isset($_POST['username']) ||
!isset($_POST['email']) ||
!isset($_POST['passwort']) ||
!isset($_POST['sex']) ||
!isset($_POST['vorname']) ||
!isset($_POST['geb_tag']) ||
!isset($_POST['geb_mon']) ||
!isset($_POST['geb_jahr']) ||
!isset($_POST['sicherheitsfrage']) ||
!isset($_POST['antwort']) ||
empty($_POST['vorname']) ||
empty($_POST['nachname']) ||
empty($_POST['username']) ||
empty($_POST['email']) ||
empty($_POST['passwort']) ||
empty($_POST['sex']) ||
empty($_POST['vorname']) ||
empty($_POST['geb_tag']) ||
empty($_POST['geb_mon']) ||
empty($_POST['geb_jahr']) ||
empty($_POST['sicherheitsfrage']) ||
empty($_POST['antwort'])) {
$error_msg = "Bitte füllen Sie alle Felder aus.";
return;
}
if($_POST['passwort'][0] !== $_POST['passwort'][1]) {
$error_msg = "Die Passwörter stimmen nicht überein.";
return;
}
if($_POST['email'][0] !== $_POST['email'][1]) {
$error_msg = "Die e-Mail adressen stimmen nicht überein.";
return;
}
if(strlen($_POST['username']) > 20 ) {
$error_msg = "Der Username ist zu Lang";
return;
}
if(strlen($_POST['vorname']) > 30 ) {
$error_msg = "Der Vorname ist zu Lang";
return;
}
if(strlen($_POST['nachname']) > 30 ) {
$error_msg = "Der Nachname ist zu Lang";
return;
}
if(!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
$error_msg = "Bitte geben Sie eine gültige Email Adresse ein.";
return;
}
$geb_tag = trim($_POST['geb_tag']) ;
$geb_mon = trim($_POST['geb_mon']) ;
$geb_jahr = trim($_POST['geb_jahr']) ;
$passwort = hash('sha256', $_POST['passwort'][0].$salt);
$username = trim($_POST['username']) ;
$vorname = trim($_POST['vorname']) ;
$nachname = trim($_POST['nachname']) ;
$email = $_POST['email'] ;
$antwort = trim($_POST['antwort']) ;
$sicherheitsfrage = trim($_POST['sicherheitsfrage']) ;
$sex = trim($_POST['sex']) ;
$user_ip = ip2long($_SERVER['REMOTE_ADDR']);
$confirm_code=md5(uniqid(rand()));
#$log_data = '
# INSERT INTO
# ow_login
# (username, email, passwort, confirmcode, ip, sicherheit, antwort) )
# VALUES
# (?, ?, ?, ?, ?, ?,?)';
#
# $stmtt = $db2->prepare($log_data);
# $stmtt->bind_param('ssssiss', $username, $email, $passwort, $confirmcode, $user_ip, $sicherheitsfrage, $antwort);
# if(!$stmtt->execute()) {
# echo "Fehler";
# }
$log_data = mysql_query("INSERT
INTO
ow_login
(username, email, passwort, confirmcode, ip, sicherheit, antwort)
VALUES
('$username', '$email, '$passwort, '$confirmcode, '$user_ip, '$sicherheitsfrage', '$antwort')");
mysql_query($log_data) or die(mysql_error());
echo mysql_affected_rows();
echo "{$log_data}\n";
$last_id = mysql_insert_id($log_data);
$pro_data = mysql_query("INSERT
INTO
ow_user_data
(userid, vorname, nachname, geb_tag, geb_mon, geb_jahr, sex)
VALUES
('$last_id', '$vorname', '$nachname, '$geb_tag', '$geb_mon', '$geb_jahr', '$sex')");
$scs_msg =" Der Bernutzer ".htmlspecialchars($_POST['name'])." wurde erfolgreich hinzugefügt Bitte bestätigen Sie nun Ihre e-Mail.";
header ("Location: ?prof=6&a=2");
?>
wenn ich im 2ten Script eine weiteren Post eintrage mit zufälligem Namen schlägt es sofort an und ich erhalte den hinweis das diese nicht defeniert ist, somit wird dieses script immerhin aufgerufen bei absenden des formulars.
Sonst passiert aber nichts mehr und seid ich
PHP-Code:
mysql_query($log_data) or die(mysql_error());
echo mysql_affected_rows();
echo "{$log_data}\n";
mit eingebaut habe wird auch nichts mehr in die Datenbank geschrieben. mfg
Ersten Fehler gefunden <?php echo $err_msg; ?> im formular ist nicht korrekt und gabe es durch <?php echo $error_msg; ?> wie im script ersetzt arbeite weiter dran. dummer fehler geb ich zu.
Nun beendet er es bei:
if(!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
$error_msg = "Bitte geben Sie eine gültige Email Adresse ein.";
return;
}
dabei ist die email definitiv gültig.
[PHP][Snippet] Array zu XML konvertieren