MySQL Register Script Into klappt nicht
Einklappen
X
-
Hey Leute das Thema hat sich erledigt hat sich herausgestellt das ich auf einmal mysqli habe und es deswegen nicht geklappt hatt. td danke an alle
-
Hey iBumsti danke für deine hilfe ich werds gleich mal austesten sage dann obs geklappt hat oder nicht
Einen Kommentar schreiben:
-
was soll überhaupt mysql_real_escape_string(htmlspecialchars ?
beschäftige dich bitte mit KONTEXT-WECHSEL
Einen Kommentar schreiben:
-
Zitat von iBumsti Beitrag anzeigenDein Fehler ist -> INSERT INTO benutzer VALUES('', '$name', '$pass1', '4', 'a')
Es muss heißen -> INSERT INTO benutzer ('id','name','password','zahlenspalte','buchstabenspalte') VALUES ('', '$name', '$pass1', '4', 'a')
Wenn man Werte für alle Spalten angibt, muss man die Spalten nicht auflisten, dann reicht die VALUES-Klausel.
Und die Spaltennamen in Hochkommata zu setzen, ist definitiv falsch.
Einen Kommentar schreiben:
-
Oh Mann.
Du tust mir ein bisschen leid.
Ich habe früher auch solche Antworten bekommen, die mir als Neuling nichts gebracht haben. Aber aber es muss sein um selbst besser auf Fehler und dessen Behebungsmöglichkeiten zu achten.
Schau dir unbedingt mal die Sachen an die hier beschrieben worden sind um selbst einen Fehler zu finden.
Aber nun zu deinem Problem.
Wenn du einmal mit einer direkten Eingabe über zB phpmyadmin versucht hättest ob der INSERT funktioniert wärst du selbst drauf gekommen.
Merke dir das du vorher den Test immer mal machen solltest ob der Insert auch ohne PHP funktioniert.
Dein Fehler ist -> INSERT INTO benutzer VALUES('', '$name', '$pass1', '4', 'a')
Es muss heißen -> INSERT INTO benutzer ('id','name','password','zahlenspalte','buchstabenspalte') VALUES ('', '$name', '$pass1', '4', 'a')
Anmerkung: Bitte... die Namen id, name, passwort, zahlenspalte und buchstabenspalte sind von mir ausgedacht und von dir zu ersetzen.
Einen Kommentar schreiben:
-
Zitat von Delein Beitrag anzeigenSo habe nun vor den tags <?php session_start(); ?> steht aber klappen tuts immer noch nicht
Error_reporting aktiviert?
Nein?
Machen!
$name = mysql_real_escape_string(htmlspecialchars($_POST['name']));
2. das htmlspecialchars() ist da flüssiger als Wasser. Überflüssig.
Welche Datei zeigst du da überhaupt?
Die Login.php, oder die index.php?
echo"Der Benutzer wurde erfolgreich erstellt";
Und eine mysql_error() Auswertung/Ausgabe sehe ich da auch nicht.Zuletzt geändert von combie; 27.08.2013, 05:05.
Einen Kommentar schreiben:
-
So habe nun vor den tags <?php session_start(); ?> steht aber klappen tuts immer noch nicht
Einen Kommentar schreiben:
-
Zitat von Delein Beitrag anzeigensession_start() steht doch schon oben am anfang des Scripts
Einen Kommentar schreiben:
-
session_start() steht doch schon oben am anfang des Scripts muss session_start() noch iergend wo hin geschrieben werden?
Aber kann mir auch nicht vorstellen das das nur daran liegen kann.
Einen Kommentar schreiben:
-
Halte dich an das "EVA Prinzip"!
Sonst wird das nichts.
z.B: session_start() muss vor allen Ausgaben kommen.
Einen Kommentar schreiben:
-
MySQL Register Script Into klappt nicht
Hey Leute!
Habe da ein problem und zwar wenn ich mich Regestriere steht da zwar dann das es geklappt hat, aber wenn ich in der Datenbank nachschaue sthet dort kein neuer Benutzer.
Ich hoffe ihr könnt mir weiter helfen.
Danke schonmal im voraus.
PHP-Code:<!DOCTYPE html>
<html>
<head>
</head>
<header>
<h1>Register Here:</h1>
</header>
<body>
<div id="register">
<form action="index.php" method="post">
<?php
session_start();
$connect = mysql_connect("127.0.0.1", "Delein", "12345") or die ("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("admin_panel") or die ("Datenbank ist nicht vorhanden");
if(isset($_POST['submit'])){
$name = mysql_real_escape_string(htmlspecialchars($_POST['name']));
$pass1 = mysql_real_escape_string(htmlspecialchars($_POST['pass1']));
$pass2 = mysql_real_escape_string(htmlspecialchars($_POST['pass2']));
if ($name!="" && $pass1!= "" && $pass2!=""){
if($pass1==$pass2) {
if(strlen($name<32)) {
$query = mysql_query("SELECT * FROM benutzer WHERE username ='$name'");
$count = mysql_num_rows($query);
if($count == 0) {
$pass1 = md5($pass1);
$queryissert = mysql_query("INSERT INTO benutzer VALUES('', '$name', '$pass1', '4', 'a')");
echo"Der Benutzer wurde erfolgreich erstellt";
}else {
echo"Dieser Name ist bereits vergeben";
}
}else {
echo"Der Username ist zu lange maximal 32 Buchstaben";
}
}else {
echo"Die Passörter stimmen nicht überein";
}
}else {
echo "Es wurden nicht alle Felder asgefüllt!";
}
}
?>
<table>
<tr><td>User Name:</td><td><input size="25" type="text" name="name"/></td></tr>
<tr><td>Password:</td><td><input size="25" type="password" name="pass1" /></td></tr>
<tr><td>Password repead:</td><td><input size="25" type="password" name="pass2" /></td></tr>
</table>
<tr><td></td><td><input type="submit" name="submit" value="Register" /></td></tr>
<a href="Login.php">Login Here</a>
</form>
</div>
</body>
</html>Stichworte: -
Einen Kommentar schreiben: