Fehler in login_action.php |
BabyHanah

Hi.
 

Dabei seit: 23.10.2009
Beiträge: 878
Name: Lea :)
 |
|
|
28.11.2010 11:42 |
|
|
kext
»Ich bin ein HAL 9000 Supercomputer.«
 

Dabei seit: 28.11.2008
Beiträge: 119
Herkunft: Planet Erde
 |
|
Deine SQL-Abfrage schlägt fehl. Mit echo mysql_error(); kannst du mehr herausfinden.
Deine Abfrage ist sehr unsicher und ermöglicht nicht angemeldeten Dritten deine Datenbank zu löschen. Außerdem kommen Feld- und Tabellennamen in Backticks (`). Probier mal:
php: |
1:
|
$abfrage = mysql_query("SELECT `name`, `passw` FROM `mitglieder` WHERE `name` = '".mysql_real_escape_string($username)."' LIMIT 1"); |
|
__________________

|
|
28.11.2010 12:11 |
|
|
BabyHanah

Hi.
 

Dabei seit: 23.10.2009
Beiträge: 878
Name: Lea :)
Themenstarter
 |
|
Jetzt kommt das
Zitat: |
Warning: shell_exec() has been disabled for security reasons in /users/ponyhofivanhoe/www/login_action.php on line 11
|
__________________ # Love of my Live, my Soulmate.
|
|
28.11.2010 12:39 |
|
|
kext
»Ich bin ein HAL 9000 Supercomputer.«
 

Dabei seit: 28.11.2008
Beiträge: 119
Herkunft: Planet Erde
 |
|
Dann sind die Backticks nicht im String. Poste mal bitte den kompletten Code mit allen Zeilen. Du hast vermutlich irgendwo falsche Anführungszeichen gesetzt.
… ist auch gültiger PHP-Code und gibt unter UNIX mit deaktiviertem Save-Mode den Verzeichnisinhalt aus.
__________________

|
|
28.11.2010 13:50 |
|
|
BabyHanah

Hi.
 

Dabei seit: 23.10.2009
Beiträge: 878
Name: Lea :)
Themenstarter
 |
|
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
|
<?php
session_start();
include("datenbank.php");
?>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<?php
if(!empty($_POST[`username`]) && !empty($_POST[`password`]))
{
$username = $_POST[`username`];
$passwort = $_POST[`password`];
$abfrage = mysql_query("SELECT `name`, `passw` FROM `mitglieder` WHERE `name` = '".mysql_real_escape_string($username)."' LIMIT 1");
$daten = mysql_fetch_array($abfrage);
if($daten[passw] == $passwort)
{
$_SESSION[`name`] = $username;
echo "Login erfolgreich! <br> <b><a href="intern.php" target="_self">Weiterleitung</a></b>";
}
else
{
echo "Benutzername und/oder Passwort waren falsch. <br><a href="login.php">Login</a>";
}
}
else
{
echo "Bitte fülle alle Felder aus! <br><a href="login.php">Zurück</a>";
}
?>
</body>
</html>
|
|
__________________ # Love of my Live, my Soulmate.
|
|
28.11.2010 14:04 |
|
|
kext
»Ich bin ein HAL 9000 Supercomputer.«
 

Dabei seit: 28.11.2008
Beiträge: 119
Herkunft: Planet Erde
 |
|
Da
php: |
1:
2:
3:
4:
5:
|
if(!empty($_POST[`username`]) && !empty($_POST[`password`]))
{
$username = $_POST[`username`];
$passwort = $_POST[`password`]; |
|
gehören KEINE Backticks hin. Das sind Stringschlüssel, also kommen sie in ganz normale Anführungszeichen oder einfach weglassen als schlechte Alternative.
php: |
1:
2:
3:
4:
5:
|
if(!empty($_POST["username"]) && !empty($_POST["password"]))
{
$username = $_POST["username"];
$passwort = $_POST["password"]; |
|
__________________

|
|
28.11.2010 14:52 |
|
|
BabyHanah

Hi.
 

Dabei seit: 23.10.2009
Beiträge: 878
Name: Lea :)
Themenstarter
 |
|
Wo sollen diese Backticks denn sonst hin? egal wo cih sie hinsetzte, es kommt dauernd eine Fehlermeldung
__________________ # Love of my Live, my Soulmate.
|
|
28.11.2010 15:21 |
|
|
kext
»Ich bin ein HAL 9000 Supercomputer.«
 

Dabei seit: 28.11.2008
Beiträge: 119
Herkunft: Planet Erde
 |
|
NUR in die SQL-Abfragen, die mit mysql_query() durchgeführt werden, für Spalten und Tabellennamen, also da wo ich sie in meinem obigen Post hingesetzt habe. Nirgendwo sonst kommen Backticks hin.
php: |
1:
2:
|
$abfrage = mysql_query("SELECT `name`, `passw` FROM `mitglieder` WHERE `name` = '".mysql_real_escape_string($username)."' LIMIT 1");
// Hier: ^ ^ ^ ^ ^ ^ ^ ^ |
|
__________________

|
|
28.11.2010 16:30 |
|
|
kext
»Ich bin ein HAL 9000 Supercomputer.«
 

Dabei seit: 28.11.2008
Beiträge: 119
Herkunft: Planet Erde
 |
|
Zitat: |
Original von kext
Deine SQL-Abfrage schlägt fehl. Mit echo mysql_error(); kannst du mehr herausfinden. |
php: |
1:
2:
3:
|
$abfrage = mysql_query("SELECT `name`, `passw` FROM `mitglieder` WHERE `name` = '".mysql_real_escape_string($username)."' LIMIT 1");
if (!$abfrage) echo mysql_error();
$daten = mysql_fetch_array($abfrage); |
|
__________________

|
|
28.11.2010 17:27 |
|
|
|
Impressum
|