Ich habe mich heute zum ersten Mal mit PHP und mySQL beschäftigt. Nachdem ich längere Zeit mit verschiedenen Versionen gekämpft hatte und generell von all den manuellen Einstellungen überschwemmt wurde, bin ich auf xampp gestossen, welches nun wunderbar läuft. Als Editor verwende ich PHP Coder. PHP ist in der Version 4.3.3 und MySQL in der Version 4.0.14 installiert. Nun zu meiner Frage:
Ich habe ein simples englisches Logintutorial verfolgt, und dabei eine kleine html Seite mit einem Login Formular erstellt, welches die Daten per POST an ein Validierungs-PHPSkript sendet. Der Code des Skriptes sieht folgendermassen aus (genau wie im Tutorial):
Das Problem ist nun, dass, unabhängig von den eingegebenen Informationen, immer "error making query" (siehe * im Code) ausgegeben wird. Kann mir jemand sagen wieso? Und könnte mir auch noch jemand sagen, wie man in PHP Coder (oder in einem anderen Editor) ein Skript auf Korrektheit prüfen kann? Run scheint irgendwie nicht viel zu bringen...
Ich habe ein simples englisches Logintutorial verfolgt, und dabei eine kleine html Seite mit einem Login Formular erstellt, welches die Daten per POST an ein Validierungs-PHPSkript sendet. Der Code des Skriptes sieht folgendermassen aus (genau wie im Tutorial):
Code:
<html> <head> <title>Login Validation</title> </head> <body> <?php session_start(); $db_host = 'localhost'; $db_user = 'root'; $db_pass = ''; $db_name = 'wizardry'; $db_table = 'wizards'; $user_name = $_POST['user_name']; $password = $_POST['password']; //connect to the DB and select it $connection = mysql_connect($db_host, $db_user, $db_pass) or die(mysql_error()); mysql_select_db($db_name); //set up the query q $query = "SELECT * FROM $db_table WHERE user_name='$user_name' AND password='$password'"; //run the query and get the number of affected rows * $result = mysql_query($query, $connection) or die('error making query'); $affected_rows = mysql_num_rows($result); //if there is exactly one row, validate the user, else, invalidate him :) if($affected_rows == 1) { $_SESSION['user_name'] = $user_name; print 'validated'; } else { print 'invalid login'; } ?> </body> </html>
Kommentar