login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Aanmaken session

Offline zwobbel - 01/02/2006 18:30
Avatar van zwobbelPHP gevorderde Als ik een sesion een waarde wil toewijzen krijg ik voor dat deze bestaat een error:

Notice: Undefined index: ID in /opt/www/schoeterst3/web/zwobbel.webvisual.be/AnewCard/leden/login.php

De mannier waarop ik mijn session een waarde toegeef is:
  1. <?
  2. $_SESSION['ID'] = 1;
  3. ?>


Hoe kan ik van die undefined error afkomen?

10 antwoorden

Gesponsorde links
Offline webstab - 01/02/2006 18:30
Avatar van webstab PHP ver gevorderde session_start(); bovenaan de pagina zetten...
Offline zwobbel - 01/02/2006 18:35
Avatar van zwobbel PHP gevorderde Die staat daar ook..
Offline webstab - 01/02/2006 18:37
Avatar van webstab PHP ver gevorderde Is het geen andere fout? Post anders heel je code want ik heb het zojuist getest en ik krijg niets. [Foutmeldingen staan om het hoogste niveau]
Offline zwobbel - 01/02/2006 18:46 (laatste wijziging 01/02/2006 18:54)
Avatar van zwobbel PHP gevorderde Probleem opgelost ik gebruik nu $HTTP_SESSION_VARS["ID"]
en op deze methode lukt het perfect 
Offline webstab - 01/02/2006 18:53
Avatar van webstab PHP ver gevorderde $aFetch['ID']; bestaat dat zeker? Is het misschien id met een kleine letter?
Offline Thomas - 01/02/2006 18:55 (laatste wijziging 01/02/2006 18:56)
Avatar van Thomas Moderator Lol... hoe oud is je PHP-versie dan?

  1. <?= phpversion() ?>

?

Oh, en zet super_globals uit...
Offline TriX - 01/02/2006 19:04
Avatar van TriX HTML interesse Ik doe het altijd zo:

$_SESSION["username"] = "$username";
Offline Button - 01/02/2006 19:06
Avatar van Button PHP ver gevorderde ik heb die Notices de laaste tijd ook veel bv. als ik dit typ
  1. <?php
  2. if(isset($_GET)){
  3. $lied=$_GET['lied'];
  4. }else{
  5. echo ("het formulier is nog niet ingevuld en gesubmit");
  6. }
  7. ?>

dus ik kom voor de eerste keer op de pagina ( ik moet het form dus nog invullen, dus er bestaat nog geen $_GET['lied']) dan krijg ik toch een Notice over $_GET['lied'] zoals:
Notice: Undefined index: lied in "mijn/path"
maar dat heeft volgens mij met de foutmeldingeninstellingen te maken in php.ini, als de standaardinstellingen in php.ini niet meer hetzelfde zijn, en dus strenger zijn, geeft hij die notice wel(ook al weet ik niet hoe die instellingen bij mij zijn verandert), dus ik onderdruk die notice gewoon door er
  1. <?php
  2. @$lied=$_GET['lied'];//@ is er bij gezet om de notice te onderdrukken
  3. ?>

voor te zetten.

miss klopt mijn theorie niet ?
reageer!^^
Offline Gerard - 01/02/2006 19:12
Avatar van Gerard Ouwe rakker if(isset($_GET)){

de GET array is altijd wel geset
je moet echt controleren op de key value
dus:

if (isset($_GET['lied'])) {
Offline Button - 01/02/2006 19:28 (laatste wijziging 01/02/2006 19:44)
Avatar van Button PHP ver gevorderde ah ok !
maar normaal zou hij geen notice mogen geven als ik dit ingeef:
<?
echo $test;//zonder $test in te stellen...
?>

en dat doet hij wel!

want in een boek dat ik heb wordt gezegd dat php met de standaard foutreportage niet-toegewezen-variabelen normaal foutloos moeten afprinten... (als ga je niet op je scherm zien omdat dan de var dan een lege string '' wordt toegewezen, maar normaal ook geen notice...)

edit: ik heb mee eens wat bezig gehouden met de php.ini en de standaard instelling is
error_reporting = E_ALL & ~E_NOTICE

bij mij stond die alleen op E_ALL en werden dus wel notices afgedrukt!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.215s