\n";
echo " Name\n";
$sql = "SELECT
ID,
Name
FROM
users
ORDER BY
Name ASC;";
$result = mysql_query($sql) OR die(mysql_error());
echo " \n";
echo " Bitte wählen\n";
while($row = mysql_fetch_assoc($result)) {
echo "".$row['Name']."\n";
}
echo " \n";
echo "
\n";
echo "
\n";
echo " Password\n";
echo " \n";
echo "
\n";
echo "
\n";
echo " \n";
echo " \n";
echo "
\n";
echo " \n";
echo "\n";
}
}
}
?>[/php]das is die fehlermeldung: Warning: mysql_query() [function.mysql-query]: Can’t connect to local MySQL server through socket ‚/tmp/mysql.sock‘ (2) in /usr/export/www/vhosts/funnetwork/hosting/tnoehles/tb/admin.php on line 36
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /usr/export/www/vhosts/funnetwork/hosting/tnoehles/tb/admin.php on line 36
Can’t connect to local MySQL server through socket ‚/tmp/mysql.sock‘ (2)
Hast du error_reporting(E_ALL) drin?
So ein Fehler wird eig nur durch falsche Daten verursacht. Sicher dass sie stimmen? kontrollie sie lieber nochmal.
Ja hab ich drin. Und die DAten stimmen auch. So hier ma die index.php:
[php]<?php
error_reporting(E_ALL);
// Verbindung zu MySQL Aufbauen
@mysql_connect(HOST, USER, PASS) OR die(mysql_error());
mysql_select_db(DB) OR die(mysql_error());
include "config.php"; // die Konfigurationsdateien lesen.
// Session starten wenn ?section=admin geöffnet wurde
if(isset($_GET['section']) AND ("admin" == $_GET['section'])) {
session_start();
if(!isset($_SESSION['IP'])) {
$_SESSION['IP'] = $_SERVER['REMOTE_ADDR'];
}
if($_SESSION['IP'] != $_SERVER['REMOTE_ADDR']) {
echo "
\n";
echo " Sie dürfen nicht die Session von einem\n";
echo " anderen user Benutzten. Bitte benutzen sie\n";
echo " folgenden Link um zur Homepage zu gelangen.\n";
echo " Zurück zur Homepage\n";
echo "
\n";
die(); // Aus Sicherheitsgründen die Abarbeitung sofort beenden
}
}
include "inhalt.php";
?>[/php]und die admin.php:
[php]<?php
// die admin.php
error_reporting(0);
if(isset($_GET['action']) AND ("logout" == $_GET['action'])) {
session_destroy();
echo "
\n";
echo " Sie haben sich ausgeloggt. Um wieder in den Adminbereich\n";
echo " zu kommen müssen sie sich wieder Einloggen\n";
echo "
Wie schon von MaptheMop geschrieben hast du einen Includefehler. Du verbindest in deienr index.php mit der Datenbank. Progman hat die Verbindung aber in seinem Tutorial in der config.php. Also ändere include „config.php“; mal in include „index.php“;
Gruß
[php]<?php
include 'constant.php';
include 'variablen.php';
include 'functions.php';
?>[/php]und das is dann die constant.php:
[php]<?php
// constant.php
define('MYSQL_HOST', 'localhost');
define('MYSQL_USER', 'USER'); // kann ich ja schlecht für
// eure MySQL wissen
define('MYSQL_PASS', 'PASS'); // s.o.
define('MYSQL_DATABASE', 'DB'); // s.o.
?>[/php]
und wenn ic die @ wegmache bekomm ich ja fast nur fehlermeldungen von wegen: Use of undefined constant localhost - assumed ‚localhost‘… datselbe mit PASS und USER…
Du hast die Konstanten in der config.php, nicht aber die Verbindung.
Du musst ja auch noch:
[php] @mysql_connect(‚MYSQL_HOST‘, ‚MYSQL_USER‘, ‚MYSQL_PASS‘) or die(mysql_error());
mysql_select_db(‚MYSQL_DATABASE‘) or die(mysql_error());
[/php]
haben, damit eine Verbindung hergestellt wird. Schreib das in deine admin.php und es sollte klappen, wenn ich mich nicht verschrieben habe.
danke TheShadow es funktioniert - glaub ich ;-). aber ich bekomme auch schon die ganze zeit folgende fehlermeldungen: Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /usr/export/www/vhosts/funnetwork/hosting/tnoehles/tb/index.php:115) in /usr/export/www/vhosts/funnetwork/hosting/tnoehles/tb/index.php on line 165
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /usr/export/www/vhosts/funnetwork/hosting/tnoehles/tb/index.php:115) in /usr/export/www/vhosts/funnetwork/hosting/tnoehles/tb/index.php on line [B]165
session_start() muss ganz an den Anfang noch bevor irgend etwas anders auf der Seite ausgegeben wird. Alternativ dazu kannst du auch einfach nur ein @ davorsetzen.
ok danke ^^ jetzt hab ich aber noch en problem. wenn dat gelöst is nerv ich nit mehr ;-). also es wird jetzt alles richtig angezeigt man kann benutzernamen auswählen und PW eingeben. aber er wechselt nicht die seite sondern sagt Ungültiges Passwort. hier nochmal die admin.php:
[PHP]<?php
// die admin.php
error_reporting(E_ALL); @mysql_connect(‚HOSt‘, ‚USER‘, ‚PASS‘) or die(mysql_error());
mysql_select_db(‚DB‘) or die(mysql_error());
if(isset($_GET[‚action‘]) AND („logout“ == $_GET[‚action‘])) {
session_destroy();
echo „
\n“;
echo " Sie haben sich ausgeloggt. Um wieder in den Adminbereich\n";
echo " zu kommen müssen sie sich wieder Einloggen\n";
echo „
Ok, das ist jetzt aber echt ein Problem, wo man mit ein bissl Überlegen selbst dahinter kommen kann. Du musst doch nur zurückverfolgen, wann die Fehlermeldung ausgegeben wird, dann weißt du auch, welche Bedingung nicht gegeben ist und prüfst darauf hin, warum sie nicht gegeben ist.