Waar wordt je $_SESSION['id'] gezet?
denk dat daar het probleem zit.
include dus ook even pagina waar je $_SESSION['id'] zet
(je login o.i.d?)
Dit stukje script echoëd namelijk de gegevens van het opgegeven
$_SESSION['id'] en die geeft aan waar hij de gegevens van moet ophalen, dus lijkt me sterk als het hier aan kan liggen
Hij hoeft de inlog pagina niet te includen, dat is onzin.
Als je inlogd en je zte een session, dan word dat altijd herkent, mits je session_start(); gebruikt.
K denk dat $_SESSION['id'] niet goed is.
Heb probleem zelf ook gehad een x, en toen had ik ipv $_SESSION['sid'] gewoon['id'] gedaan.
Kijk daar eens naar
Roelh, je snapt mij niet ;) Mijn opmerking had ten eerste al niets met 'herkenning' van sessions te maken. En ten tweede zeg je zelf dat je denkt dat session_id niet goed is. En waar krijgt de sessie zijn waarde? Juist, niet in de pagina die hij hier zojuist heeft geinclude. Oftwerwijl, waar moet je gaan kijken? Waar de sessie zijn waarde krijgt, die hij in dit script weer wil gaan uitlezen.
Jij begint hier nu dus gewoon te gokken naar het probleem. Misschien gok je goed, maar het kan tig andere oorzaken hebben.
Gast ik word echt ziek van je dit is al de 2de keer dat ik je hetzelfde topic achter elkaar hier zie posten en op wmcity geen gedult fzo?
En zoals ik al op wmcity zei, waarom word het id uit een sessie gehaalt? en niet met GET? nu zal je altijd het profiel zien met het id in JOUW sessie..
<?PHP
# Je query zegt dat hij de ID van de user moet
# pakken waar de username $_POST['username'] is, en
# wachtwoord $_POST['wachtwoord'] is. Nu moet je dus de
# output van $query (de gebruiker zijn ID) in $_SESSION['id']
# zetten.
$_SESSION['id'] = mysql_result ($query, 0);
?>
<?PHP
# Je query zegt dat hij de ID van de user moet
# pakken waar de username $_POST['username'] is, en
# wachtwoord $_POST['wachtwoord'] is. Nu moet je dus de
# output van $query (de gebruiker zijn ID) in $_SESSION['id']
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in /home/med013/domains/mootje.medos.be/public_html/index.php on line 5
Warning:mysql_result(): supplied argument is not a valid MySQL result resource in /home/med013/domains/mootje.medos.be/public_html/index.php on line 5
Je probeert hier in een if (voorwaarde) $_SESSION['id'] een waarde te geven. Dat gaat natuurlijk nooit werken
Een vergelijking doe je door een dubbele is "=" te gebruiken..
en ik heb ook een foutje gemaakt. Je kunt beter (zoals roelh zei)
een assoc gaan gebruiken:
<?PHP
if ($_SESSION['id'] == $vergelijkingsVar)
{
// code hier uitvoeren
}
?>
<?PHP
if($_SESSION['id']==$vergelijkingsVar)
{
// code hier uitvoeren
}
?>
Een enkele "=" is om een variabel een waarde toe te wijzen. Dat kun je dus niet tijdens een "if()" of "elseif()" doen. Want bij deze gaat het altijd om een controle of een vergelijking.
SomaQan, ik heb niet echt het gevoel dat je snapt wat je aan het doen bent. Je knipt en plakt klakkeloos $vergelijkingsVar zonder er bij na te denken.
Misschien is het handig om eens een tutorial te lezen over:
- Variabelen
- Vergelijkingen
- Sessies
- Mysql_fetch_assoc ()
of completer:
- Een login tutorial
Probeer is na te denken, en besef dat wij je dingen proberen uit te leggen ipv voor te kouwen. $vergelijkingsVar was bedoeld als een variabel waar hij $_SESSION['id'] mee zou moeten/kunnen vergelijken. (Waarom jij dat daar wilt vat ik nog steeds niet, maarja..)
<?PHP
if (isset ($_SESSION['id']) && !empty ($_SESSION['id']))
{
$qSelUsername = mysql_query (
"SELECT username
FROM users
WHERE id = " . $_SESSION['id']);
$asUsername = mysql_fetch_assoc ($qSelUsername);
$sName = $asUsername['username'];
echo $sName; // echoëd gebruiker als id bestaat (wel controleren natuurlijk, maar dat doe je maar zelf ;)
}
?>
<?PHP
if (isset ($_SESSION['id']) && !empty ($_SESSION['id']))
{
// Bij deze query komt dus voornaam, achternaam, leeftijd er nog bij! Dit gaan we met een mooie while -> assoc doen.
$qSelGegevens = mysql_query (
"SELECT gebruikersnaam, voornaam, achternaam, leeftijd
FROM users
WHERE id = " . $_SESSION['id']);
while ($asGegevens = mysql_fetch_assoc($qSelGegevens))
{
$sGeberuikersnaam = $asGegevens['gebruikersnaam'];
$sVoornaam = $asGegevens['voornaam'];
$sAchternaam = $asGegevens['achternaam'];
$iLeeftijd = $asGegevens['leeftijd'];
}
echo "Welkom " . $sGebruikersnaam . "<br />";
echo "Uw naam is " . $sVoornaam . " " . $sAchternaam . "<br />";
echo "U bent " . $iLeeftijd . " jaar oud!";
}
# Voorbeeld output:
# Welkom Nrzonline
# Uw naam is sjaabonenstaak
# U bent 18 jaar oud!
?>
tnx hij doet het en inderdaad ik snap wel wat ik doe want ik heb de hele loginsysteem zelf gescript maar ik zal straks wel ff een paar tutorials goed door nemen