Toon posts:

sql variabele opnieuw gebruiken

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo allemaal,

Ik zit als php-beginner met het volgende probleem.
Ik heb ben met een site bezig waarop een php inlogscript werkt. Dit script werkt door middel van sessions.

Bovenaan elke pagina moet de volgende code om ervoor te zorgen dat men er niet op kan als er niet is ingelogd:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?  
session_start();    
if (session_is_registered("sess_loginnaam") && session_is_registered("sess_id"))    
{ 
?>   

Hier dan de eigenlijke pagina...................

<?  
}    
else    
{    
// geen rechten, niet ingelogd melding 
 echo "Om deze pagina te kunnen bekijken moet je zijn ingelogd!";  
}    
?>


Uit de sessie kan de volgende variabele gehaald worden: $sess_loginnaam

Als ik deze variabele dmv een echo in de pagina hierboven weergeef werkt dit perfect, maar mijn bedoeling is om met deze variabele een aantal gegevens uit de mysql database te halen dmv een query. Ik krijg alleen niet voor elkaar dit te doen.

Het query script ziet er zo uit:
code:
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
<?php
session_start();
    $link = mysql_connect("127.0.0.1", "root")
        or die("Kan geen verbinding maken");
 
      mysql_select_db("database")
        or die("Kan geen database selecteren");
      
    $query = "SELECT * FROM persggs where loginnaam = $sess_loginnaam"; 

      $result = mysql_query($query)
        or die("Fout bij uitvoeren query");
        
while ($rij = mysql_fetch_object($result)) {
    
      print "\t\t<td>\n";
        print "$rij->voornaam";
            print "\t\t</td>\n";
print "\t\t<td>\n";
            print "$rij->achternaam";
            print "\t\t</td>\n";
print "\t\t<td>\n";
            print "$rij->straat";
            print "\t\t</td>\n";
print "\t\t<td>\n";
            print "$rij->postcode";
            print "\t\t</td>\n";
print "\t\t<td>\n";
            print "$rij->woonplaats";
            print "\t\t</td>\n";
print "\t\t<td>\n";
            print "$rij->email";
            print "\t\t</td>\n";
}
    
    ?>


Hij neemt op een of andere manier de variabele $sess_loginnaam niet mee in het query script.

Iemand misschien enig idee hoe ik dit kan oplossen?

Bij voorbaat dank!

[ Voor 13% gewijzigd door Verwijderd op 06-04-2005 19:13 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

Zo te zien werk je met een oud boek of een oude tutorial. Je kan beter ander lesmateriaal opzoeken. :) Waarom? Dat staat hier: P&W FAQ - PHP: gebruik van superglobals

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Net voor de query zou ik die sessievar nog even afdrukken en eventueel ook je query zelf.

Bovendien, eigenlijk hoor je $_SESSION["sessievarname"] te gebruiken :)

Kortom, ga eens wat debuggen en kijk waar het mis gaat :)

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

Bovendien, eigenlijk hoor je $_SESSION["sessievarname"] te gebruiken :)
Klopt inderdaad. Alle session functies zijn deprecated sinds de superglobal $_SESSION bestaat. In plaats van session_register() gebruik je nou gewoon het array, en in plaats van session_is_registered() gebruik je dat array in combinatie met de functie isset(). :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.