problem mit cookies

kubanese

Mitglied
guten abend erstmal,


also ich will wenn eine bedingung wahr ist ein cookie setzen! soweit sogut
den username übergeb ich per post von meiner startseite.

aber ez kommt meine frage
warum diese variante nicht.
Code:
setcookie("tippspiel", $_post['username'], time()+3600);

wobei diese variante funktioniert
Code:
setcookie("tippspiel", "nickname", time()+3600);

ich hab schon seit geraumer zeit hier im forum geguggt und werd aber trotzdem net schlau.

mfg
kubanese
 
$_post['username'],
Weil das
$_POST['username'] heißt?

Ansonsten woran erkennst, dass es nich geht?
 
ich lass mir dann auf einer anderen seite den wert von meinem cookie ausgeben
mit
Code:
$test = $HTTP_COOKIE_VARS["tippspiel"];
echo($test);
 
Probiers mal so:
PHP:
setcookie("tippspiel", $_POST["username"], time()+3600);

Ansonsten gib doch einfach mal die Post Variable vorher aus, um zu prüfen, ob diese auch wirklich gefüllt ist!

Kleiner Tipp:
Ich selbst arbeite nicht mit Cookies, weil diese ohne Probleme geblockt werden können und dadurch irgendwelche Probleme in deinem Script auftauchen werden! Es ist nämlich nicht wirklich schon, wenn ein normaler User plötzlich Admin-Rechte hat! :)
Arbeite Lieber mit Sessions, dort wirst nicht auf solche Probleme stoßen
 
also ich hab den fehler gefunden. es lag an meiner übergabe von meinem username.

da Ive gesacht hat, dass cookies net so toll sind hab ich mir mal
dieses (http://www.tutorials.de/forum/showthread.php?p=677505) durchgelesen und auch ausprobiert.

da kommt bei mir folgender fehler

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /srv/www/htdocs/spiel/spiel/login.php on line 15

und ich gekomm des halt auch gar net wech.

kann mir jemand sagen warum des kommt? die funktion gibts doch in php!
meine php version is

PHP 4.3.8 (cli) (built: Oct 5 2004 12:56:40)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies

ich hoff ihr könnt mir helfen

mfg
kubanese
 
Das wird wohl daran liegen, dass die Mysql-Abfrage falsch ist! Wahrscheinlich hast du die Abfrage nicht auf deine Datenbank abgestimmt!

Ich sags immer wieder:
WENIGER COPY UND PASTE !
 
Auf jedenfall ist dort irgendwo ein Fehler drin! Sost müsste es nämlich gehen! Kannst ja mal dein Teilscript posten!
 
Code:
<?php
		session_start (); // Starte eine Session.
		
		$username = $_POST['username'];
		$passwort = $_POST['passwort'];
		
		// ======== AUFBAU DER DATENBANKVERBINGUN ========
		$connID = mysql_connect ("192.168.1.201", "", "");
		@mysql_select_db ("tippgemeinschaft", $connID);
		
		// Generiere und starte die Abfrage
		$sql = "SELECT * FROM benutzer WHERE (Username like '$username') AND (passwort = '$passwort')";
		$result = mysql_query ($sql, $connID);
		
		if (mysql_num_rows ($result) > 0) {
		  // Ein Datensatz wurde gefunden.
		  $datenrichtig = true;
		
		  // Variable $user_eingeloggt erstellen.
		  $user_eingeloggt = true;
		} else {
		  // Die Benutzerdaten waren falsch.
		  $datenrichtig = false;
		
		  // Variable $user_eingeloggt erstellen.
		  $user_eingeloggt = false;
		}
		
		// Variable $user_eingeloggt in der Session registrieren.
		session_register ("user_eingeloggt");
?>
 
kubanese hat gesagt.:
Code:
<?php
		$sql = "SELECT * FROM benutzer WHERE (Username like '$username') AND (passwort = '$passwort')";
?>
Das willst du mit phpmyadmin zusammen gebastelt haben Das glaubst du ja wohl selber nicht!
Probier's mal so:
PHP:
		$sql = "SELECT * FROM `benutzer` WHERE `Username` = '" . $username . "' AND `passwort` = '" . $passwort . "')";
 
Zurück