Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Sql befehl wird nicht ausgeführt! [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Sql befehl wird nicht ausgeführt!


 
Lennie
29-06-2006, 16:55 
 
Hallo.
Also ich habe jetzt ein script programmiert, was einen User bei angabe richtiger Daten in die DB einträgt.
Es wird kein Fehler angezeigt, und dank der eingebauten bool variable $fehler = true / $fehler = false, wird auch angezeigt, das kein fehler bestand. in der datenbank liegt jedoch kein fehler vor.
ich habe auch die datenbank daten kontrolliert, und die sind richtig, sonst würde ja auch mein gästebuch nicht funktionieren.

Hier der code:

<?php
error_reporting(E_ALL);
include("config.php");

@mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());
mysql_select_db(MYSQL_DATABASE) OR die(mysql_error());

$name = $_POST["name"];
$code = $_POST["code"];
$mail = $_POST["mail"];
$pw1 = $_POST["pw1"];
$pw2 = $_POST["pw2"];

$fehler = false;

if ( empty($name) ) {
echo 'Du musst einen Namen angeben!';
$fehler = true;
}

if ( empty($mail) ) {
echo 'Du hast keine Mail angegeben!';
$fehler = true;
}

if ( !preg_match("/^[^\s()<>@,;:\"\/\[\]?=]+@\w[\w-]*(\.\w[\w-]*)*\.[a-z]{2,}$/i", $mail) ) {
echo 'Deine Mail ist leider nicht korrekt!';
$fehler = true;
}

if ( empty($code) ) {
echo 'Du hast keinen Registercode angegeben!';
$fehler = true;
}

if ( $code != "487kvrwihz" ) {
echo 'Dein Registercode ist ungültig!';
$fehler = true;
}

if ( $pw1 != $pw2 ) {
echo 'Deine Passwörter sind nicht identisch!';
$fehler = true;
}

if ( empty($pw1) ) {
echo 'Du hast kein Passwort angegeben.';
$fehler = true;
}

if ( empty($pw2) ) {
echo 'Du hast dein Passwort nicht widerholt!';
$fehler = true;
}

if ( $fehler == true ) {
echo "<br><br>Eine oder Mehrere angaben waren ungültig<a
href=\"register.php\">HIER</a> kannst du es erneut Versuchen!";
}

if ( $fehler == false ) {
$sql = "INSERT INTO users
SET UserName = '$name', UserPass = MD5('$pw1'),
UserMail = '$mail' ";
mysql_query($sql);
echo "Du wurdest erfolgreich registriert und kannst dich jetzt <a
href=\"login.php\">HIER</a> einloggen! Zur Sicherheit wurden dir
die Daten noch an deine Mail gesendet!";
$empfaenger = "$mail";
$betreff = "lennie06.de - Registrierung Gästehaus";
$text = "Hallo $name!
Du hast dich Erfolgreich für das Gästehaus auf
www.lennie06.de beworben.
Zur sicherheit habe ich dir hier nochmal deine Zugangsdaten
zugesendet!
----
Dies ist eine Automatisierte Mail,
weder Admin noch User können
dein Passwort und benutzer lesen.
Username: $name
Passwort: $pw1
----";
mail($empfaenger, $betreff, $text,
"From: lennie06.de <lennie@lennie06.de>");

}
?>

 
arkos
29-06-2006, 17:10 
 
was passiert eigentlich bei der konstruktion???:

@mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());


ich unterdrücke fehlermeldungen, und sage ihm er soll mir fehlermeldungen geben?

weiß das wer?

 
TobiaZ
29-06-2006, 17:16 
 
Du hast dir ja mal wieder richtig mühe gemacht. mit PHP öffnen und mit CODE schließen. Supaaa!! Guckst du dir auch noch mal an, was du so postest?

 
wahsaga
29-06-2006, 17:17 
 
Original geschrieben von arkos
ich unterdrücke fehlermeldungen,
Du unterdrückst Warnings, Notices etc. die dir PHP ggf. liefern würde.
und sage ihm er soll mir fehlermeldungen geben?
Und sagst dann, dass du falls es nicht geklappt haben sollte, bitteschön gern die Fehlermeldung von MySQL ausgegeben bekommen möchtest.

 
arkos
29-06-2006, 17:20 
 
ahh, danke.

ich arbeite eigentlich nie mit dem @ - deshalb wusste ich nicht, was hinten rauskommt.

gibt es fälle, wo es sinn macht? schreit doch irgendwie nach schlechtem code...

 
Lennie
29-06-2006, 17:25 
 
also: ich hab php tag geschlossen code schluss genommen text umgeborchen und in meiner version das @ gelöscht. es wird imemrnoch keine fehlmereldung angezeigt. was kann es dann sein?

 
wahsaga
29-06-2006, 17:27 
 
Du hast dich kein bisschen dafür interessiert, ob deine Query von der Datenbank auch fehlerfrei verarbeitet werden konnte.

 
Lennie
29-06-2006, 17:35 
 
was meinst du damit? wieso hätte der nicht ausgeführt werden können? wie soll ich das überprüfen?

 
TobiaZ
29-06-2006, 17:37 
 
Hast du jemals unsere Regeln gelesen? Wozu haben wir den abschnitt über mysql_error geschrieben? Wie gut, dass du so gut Programmieren kannst, dass du das nicht nötig hast...

 
arkos
29-06-2006, 17:41 
 
hat sich erledigt sorry


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