PHP Variable in MySQL einfügen
erbsenhirn
- datenbank
0 Vinzenz Mai0 suit0 dedlfix0 Tom0 Vinzenz Mai0 Tom0 Steel0 Vinzenz Mai0 Steel
Hallo,
gleich folgt mein Quelltext, der aber nicht funzt.
Folgende Fehlermeldungen kommen:
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user ''@'localhost' (using password: NO) in /users/*******/www/registrieren.php on line 21
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in /users/*******/www/registrieren.php on line 21
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user ''@'localhost' (using password: NO) in /users/*******/www/registrieren.php on line 22
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in /users/*******/www/registrieren.php on line 22
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$benutzername = $_POST["benutzername"];
$passwort = $_POST["passwort"];
$passwortcheck = $_POST["passwortcheck"];
if ($passwort == $passwortcheck) {
$db = @new MySQLi('localhost', 'manwiedumm', 'uni99key', 'manwiedumm');
if (mysqli_connect_errno()) {
die('Konnte keine Verbindung zu Datenbank aufbauen.');
}
$sql = 'INSERT INTO
Daten(Benutzername, Passwort)
VALUES
("'.mysql_real_escape_string($benutzername).'",
"'.mysql_real_escape_string($passwort).'");';
$result = $db->query($sql);
};
?>
Vielen Dank für Ihre Hilfe.
Hallo,
Du verwendest die MySQLi-Erweiterung:
$db = @new MySQLi('localhost', 'manwiedumm', 'uni99key', 'manwiedumm');
[...]
Es wäre daher eine gute Idee, die Maskierfunktion von mysqli zu verwenden:
$sql = 'INSERT INTO
Daten(Benutzername, Passwort)
VALUES
("'.mysql_real_escape_string($benutzername).'",
"'.mysql_real_escape_string($passwort).'");';
statt der Maskierfunktion der althergebrachten MySQL-Erweiterung.
Anders ausgedrückt: Du willst ein i kaufen.
Freundliche Grüße
Vinzenz
gleich folgt mein Quelltext, der aber nicht funzt.
Folgende Fehlermeldungen kommen:
Was hast du bisher unternommen um herrauszufinden was diese Fehlermeldungen bedeuten?
Hi!
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user ''@'localhost' (using password: NO) in /users/*******/www/registrieren.php on line 21
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in /users/*******/www/registrieren.php on line 21
Schau bitte ins PHP-Manual zur Arbeitsweise der Funktion. Sie möchte gern gemäß der auf der Verbindung ausgehandelten Zeichenkodierung arbeiten.
$benutzername = $_POST["benutzername"];
$passwort = $_POST["passwort"];
$passwortcheck = $_POST["passwortcheck"];
Warum kopierst du diese Werte in andere Variablen?
$db = @new MySQLi('localhost', 'manwiedumm', 'uni99key', 'manwiedumm');
("'.mysql_real_escape_string($benutzername).'",
Und warum nimmst du nicht die zur Extension mysqli passenden Funktionen/Methoden?
Lo!
Hello,
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user ''@'localhost' (using password: NO) in /users/*******/www/registrieren.php on line 21
Hast Du keinen User angegeben und uns im Mutercode nur etwas falsches dargestsellt?
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);$benutzername = $_POST["benutzername"];
$passwort = $_POST["passwort"];
$passwortcheck = $_POST["passwortcheck"];
if ($passwort == $passwortcheck) {
$db = @new MySQLi('localhost', 'manwiedumm', 'uni99key', 'manwiedumm');
if (mysqli_connect_errno()) {
die('Konnte keine Verbindung zu Datenbank aufbauen.');
}
$sql = 'INSERT INTO
Daten(Benutzername, Passwort)
VALUES
("'.mysql_real_escape_string($benutzername).'",
"'.mysql_real_escape_string($passwort).'");';$result = $db->query($sql);
};
?>
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
![](http://selfhtml.bitworks.de/Virencheck.gif)
--
☻\_
/▌
/ \ Nur selber lernen macht schlau
<http://bergpost.annerschbarrich.de>
Hallo Tom,
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user ''@'localhost' (using password: NO) in /users/*******/www/registrieren.php on line 21
Hast Du keinen User angegeben und uns im Mutercode nur etwas falsches dargestsellt?
hat er nicht. Die Fehlermeldungen kommen von einem Verbindungsversuch, den mysql_real_escape_string() gemäß Doku vornimmt, der dem Aufruf von
ohne Übergabeparameter entspricht.
Es existiert keine Verbindung, die mysql_real_escape_string() nutzen könnte, weil das Erbsenhirn die MySQLi-Erweiterung verwendet, worauf dedlfix und ich bereits hingewiesen haben.
Freundliche Grüße
Vinzenz
Hello Vinzenz,
hat er nicht. Die Fehlermeldungen kommen von einem Verbindungsversuch, den mysql_real_escape_string() gemäß Doku vornimmt, der dem Aufruf von
Ach, wie dumm von mir. Wo Du es doch sogar geschrieben hattest :-)
Das fehlende i war mir zwar aufgefallen, aber ich habe nicht weiter darüber nachgedacht, weil ich mich ja über die Mischung von mysqli-Objekten und klassischen Funktionen aufregen wollte ;-P
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Moin!
das Erbsenhirn
?
Hallo Steel,
das Erbsenhirn
?
schau' mal, wie sich der OP genannt hat ...
Freundliche Grüße
Vinzenz
Hoi!
das Erbsenhirn
?schau' mal, wie sich der OP genannt hat ...
:D
Ich sollte wieder Namen lesen.