login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[Php] Verkeerde resultaten (Opgelost)

Offline Simax - 04/03/2008 18:21
Avatar van SimaxOnbekend Plotseling valt mij het volgende op..
Ik heb links een userpanel(div) met een loginform. Rechts heb ik een content(div) waarin de paginas worden weergegeven.

Zodra er een gebruiker is ingelogd, worden zijn gegevens(gebruikersnaam, profielfoto, vrienden) getoond in het userpanel.

Wanneer de ingelogde gebruikers een profiel van een andere gebruiker bezoekt, worden plotseling de gegevens van desbetreffende gebruiker gewijzigd in de gegevens van de ingelogde gebruiker .

Iemand die weet wat hiervan de oorzak kan zijn? Heb egt al vanalles geprobeerd, maar niets wil helpen.. Alvast bedankt .

11 antwoorden

Gesponsorde links
Offline Koen - 04/03/2008 18:24
Avatar van Koen PHP expert Volgens mij staat register_globals aan in je php.ini,
dus bv je hebt $_SESSION['u_name'], maar als je ergens anders $u_name = 'blabla' doet, wordt de sessie waarde aangepast..
Offline Simax - 04/03/2008 18:27 (laatste wijziging 04/03/2008 18:30)
Avatar van Simax Onbekend 'register_globals' stonden inderdaad aan .
Mag ik vragen waar deze voor dienen?

Edit
Citaat:
register_globals = Off
wil niet helpen
Offline Koen - 04/03/2008 18:29 (laatste wijziging 04/03/2008 18:30)
Avatar van Koen PHP expert Deze dienen ervoor dat je niet altijd de globals (POST,SERVER,GET,SESSION,COOKIE) moet gebruiken, maar gewoon $key.
Maar als dit opstaat, en je werkt met bv $_SESSION['ingelogd'], dan kan je in de url zetten ?ingelogd=true, en dan kan de gebruiker bij de gevoelige data ;P
Daarom, afzetten 

Edit:
Dan ligt daar de fout niet he 
Heb je soms wat code? 
Offline Simax - 04/03/2008 18:37 (laatste wijziging 04/03/2008 18:39)
Avatar van Simax Onbekend Natuurlijk..

userpanel.php
http://www.pastebin.be/9568

leden.php
http://www.pastebin.be/9569

Edit
Kan het soms komen door het meerder malen gebruiken van dezelfde variabele($query)?
Offline marten - 04/03/2008 18:53
Avatar van marten Beheerder Spot in het vervolg graag www.plaatscode.be gebruiken voor lappen code. En het wordt aangeraden om voor elke variabele in 1 script een andere naam te gebruiken.

Ik laat mijn variabele namen altijd voorafgaan van de eerste letter van het soort.

$aArray, $sString, $oObject, $iInteger

maar dat is voor jezelf natuurlijk hoe je dat doet.
Offline Simax - 04/03/2008 19:01 (laatste wijziging 04/03/2008 19:19)
Avatar van Simax Onbekend Ok, bedankt voor de tip .
Het zou dus opgelost moeten zijn door iedere variabele in hetzelfde script een andere naam te geven?

Ik ga het uitproberen..

Edit
Heb de queries hernoemt, maar probleem is nog niet verholpen..
Kan het komen doordat de variabele in een ander script al word gebruikt of maakt dat niets uit?
Offline marten - 04/03/2008 19:32
Avatar van marten Beheerder Ander script zou niks uit mogen maken. Tenzij je dat script include ofzo.
Offline Simax - 04/03/2008 19:36 (laatste wijziging 04/03/2008 19:37)
Avatar van Simax Onbekend Hier de pagina waar alles geinclude word..

index.php
  1. <div class="userpanel">
  2. <?php include("userpanel.php"); ?>
  3. </div>
  4. <div class="content">
  5. <?php
  6. if(isset($_GET["page"]))
  7. {
  8. switch($_GET['page'])
  9. {
  10. case "home": $page = "home.php"; break;
  11. case "agenda": $page = "agenda.php"; break;
  12. case "leden": $page = "leden.php"; break;
  13. case "fotos": $page = "fotos.php"; break;
  14. case "registreren": $page = "registreren.php"; break;
  15. }
  16. include($page);
  17. }
  18. else
  19. {
  20. include("home.php");
  21. }
  22. ?>
  23. </div>


Conclusie
Alles word geinclude, dus komen de variabele meerdere malen voor uit meerdere paginas/scripts.. toch?
Offline marten - 04/03/2008 19:38
Avatar van marten Beheerder Ja.....
Offline Simax - 04/03/2008 20:35
Avatar van Simax Onbekend Misschien tips hoe ik dit kan oplossen? 
Offline Jurgo - 04/03/2008 20:47 (laatste wijziging 04/03/2008 20:51)
Avatar van Jurgo PHP interesse je gebruikt in allebei de pagina's $id. Volgens mij wordt deze overschreven zodra je op een gebruiker klikt. ALs gevolg dat je andere gegevens ziet.

Boven aan de leden pagina moet je een $temp aanmaken $temp = $id. En onder aan de pagina zet je dan $id = $temp. Misschien dat het helpt?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.181s