cookie wird erkannt, jedoch kann ich ihn nicht ansprechen...

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Benutzeravatar
18inch
Mitglied
Beiträge: 77
Registriert: 14.10.2003 00:41

cookie wird erkannt, jedoch kann ich ihn nicht ansprechen...

Beitrag von 18inch »

Hallo,
ich teste gerade ein paar Sachen aus, deswegen wundert euch nicht wieo ich so komische php-Seiten habe.
Auf der index Site kann man wählen ob man in die Datenbank will,..., oder ob man sich einlogen will.
Klickt man den "Einlog-Link" an, dann kommt man auf die login.php!
login.php:
Hier wird der User aufgefordert seinen Usernamen und sein Passwort einzugeben.
Daraufhin betätigt er den Button Proof und es wir überprüft ob er in der Datenbank zu finden ist, wenn die der Fall ist, dann erscheint ein neuer Button welcher ihn zur login02.php führt.
login02.php:

Code: Alles auswählen

<?php
     setCookie("mycookie",$hidden_id,time()+20);
?>
$hidden_id ist hier der Primärschlüssel aus meine Datenbanktabelle, damit ich den User eindeutig zuweisen kann!
Auf derselben Site habe ich folgenden Code:

Code: Alles auswählen

$name=@mysql_query("SELECT username FROM freunde WHERE ID=='$hidden_id'");
echo("$name");
echo("Hallo $name, Du bist nun eingeloggt und siehst auf allen Seiten deinen Usernamen.");
echo("<br><br><a href='index.php'>@home</a>");
Jedoch kann er mir hier nicht den Namen ausgeben!!!
Es kommt immer nur:"Hallo , Du bist nun eingeloggt und siehst auf allen Seiten deinen Usernamen.
Ich habe auf den anderen Seiten auch noch kleinere Tests eingefügt:
index.php:

Code: Alles auswählen

if(isset($_COOKIE['mycookie'])) 
     {
          $dbcnx = @mysql_connect("localhost","root","");
          if(!$dbcnx)
          {
               echo("<p>Zur Zeit keine Verbindung möglich.</p>");
               exit();
          }
          if(!@mysql_select_db("tests"))
          {
               echo("<p>Auswahl der Datenbank leider nicht möglich!</p>");
               exit();
          }
          $result=@mysql_query("SELECT vorname FROM freunde WHERE ID==$mycookie");
          echo("$result");
          echo ("Hallo $result! Du bist per Cookie erkannt worden.");    
     } 
Hir gibt er mir nur wieder aus: "Hallo ! Du bist per Cookie erkannt worden.
Anscheinend mache ich irgendwas bei der Datenbankabfrage falsch. Aber wo ist denn der Fehler????
Ich weiss, dass ich den cookie nur auf 20 Sekunden gesetzt habe!
Das habe ich nur zu Testzwecken gemacht.

Würde mich riesig freuen, wenn mir hier jemand helfen könnte!!!

Frohe Weihnachten und einen Guten Rutsch ins neu Jahr!!!

Euer 18inch
Benutzeravatar
itst
Ehrenadmin
Beiträge: 7418
Registriert: 21.08.2001 02:00
Wohnort: Büttelborn bei Darmstadt
Kontaktdaten:

Beitrag von itst »

Sascha A. Carlin,
phpBB.de Ehrenadministrator
:o
Benutzeravatar
18inch
Mitglied
Beiträge: 77
Registriert: 14.10.2003 00:41

Beitrag von 18inch »

ich kann mit sql und datenbanken eigentlich umgehen!
Aber kann mir vielleicht jemand sagen, wo bei mir der Fehler liegt!!

Wenn ich anstatt ID==$mycookie, ID=$mycookie schreibe, dann gibt er mir immer den User oder das Ergebnis: Resource id #2
Wieso gibt er mir nicht den richtigen Usernamen aus!!!???
Wieso macht er das so!!!??

Hat einer einen Tip für mich!!!???

Euer 18inch
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Lies dir am besten nochmal die Grundlagen zum Zugriff auf MySQL aus PHP sowie was für Datentypen die einzelnen Funktionen zurückgeben durch, du scheinst da einiges nicht verstanden zu haben.

Ausserdem solltest du die "@" vor den Funktionsnamen wegnehmen, denn die verhindern, daß Fehlermeldungen angezeigt werden, die dir sagen was du falsch gemacht hast. Mit [php:mysql_error] und [php:mysql_errno] kannst du noch detailiertere Fehlermeldungen anzeigen lassen.
Elo
Mitglied
Beiträge: 318
Registriert: 04.11.2002 17:44

Beitrag von Elo »

Und was ist mit den Usern welche die Kekse in ihren Brausern deaktiviert haben und mir einer SID im Forum unterwegs sind?

Zur Info:

Code: Alles auswählen

ID==$mycookie
in einer Mysql-Abfrage ist nicht korrekt.

Korrekt ist:

Code: Alles auswählen

ID = $mycookie
Ansonsten den o.g. Links folgen.

Elo
Benutzeravatar
18inch
Mitglied
Beiträge: 77
Registriert: 14.10.2003 00:41

Beitrag von 18inch »

Trotzdem Danke an alle!
Diese Lösung hatte ich auch schon!
Ich hatte das "==" nur benutzt weil ich schon so verzweifelt war!
Es funktioniert einfach nicht!
Ich werde mir einfach mal dei handbücher vornehmen!

Vielen Dank
18inch
Programmer
Mitglied
Beiträge: 32
Registriert: 10.08.2003 13:34
Kontaktdaten:

Re: cookie wird erkannt, jedoch kann ich ihn nicht anspreche

Beitrag von Programmer »

18inch hat geschrieben: $name=@mysql_query("SELECT username FROM freunde WHERE ID=='$hidden_id'");
echo("$name");
echo("Hallo $name, Du bist nun eingeloggt und siehst auf allen Seiten deinen Usernamen.");
echo("<br><br><a href='index.php'>@home</a>");
[/code]
Jedoch kann er mir hier nicht den Namen ausgeben!!!
Es kommt immer nur:"Hallo , Du bist nun eingeloggt und siehst auf allen Seiten deinen Usernamen.

Euer 18inch
lol :D :D :D

Was die anderen übersehen haben ist ganz simpel.
ECHO löscht alle COOKIE Inhalte !!!
Sobald ein ECHO da war, wars mit dem Inhalt vom COOKIE !

$namestr = $_COOKIE("name");
echo("Hallo $namestr, Du bist nun eingeloggt und siehst auf allen Seiten deinen Usernamen.");

So gehts !
Mit einem Computer löst man Probleme, die man ohne ihn, nicht hätte. :grin:
Antworten

Zurück zu „Coding & Technik“