IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

register_global à off


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 295
    Points : 135
    Points
    135
    Par défaut register_global à off
    bonjour
    j'ai developpe un site avec easyphp 1.6 donc register_global à on en voulant prendre un hebergeur payant les sessions ne marchent plus je me suis aperçu que le par session_register est à off
    j'ai toujours une erreur je en vois pas comment transformer ce bout de code
    qui correspond si je clique sur le bouton ok executer le traitement il me sort une erreur à l'affichage de la page

    Notice: Undefined index: ok in c:\program files\easyphp\www\bestoccaz\inscription.php on line 9
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if($_POST['ok']){
    $email=trim($email);
    $nom=strtoupper($nom);
    //traitement
    d'autre part comment ecrire les variable de formulaire dans l'insertion
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $insertSQL = "INSERT INTO membre (idreg,civilite,statut,nom,prenom,adresse,cp,ville,telephone,gsm,email,pass,datem) VALUES ('$idreg','$civilite','$statut','$nom','$prenom','$adresse','$cp','$ville','$telephone','$gsm','$email','$pass',now())";
    $Result1 = mysql_query($insertSQL) or die(mysql_error());
    $idmembre=mysql_insert_id();
    session_register("idmembre");// on enregistre son ID
    session_register("email");
    session_register("pass");
    session_register("nom");
    session_register("prenom");
    session_register("statut")
    Merci de votre aide, car c'est une mauvaise experience qui me faire perdre du temps mais qui peut être m'apprendra à ne pas utiliser de commande obselete

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Utiliser la variable superglobale $_SESSION au lieu de session_register :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $_SESSION['foo'] = 'bar';
    au lieu de :
    $foo = 'bar';
    session_register('foo');
    Pour éviter votre message, utilisez isset :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if (isset($_POST['ok'])) {
        // traitement
    } else {
       // sinon ...
    }

    Julp.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 295
    Points : 135
    Points
    135
    Par défaut j'en ai marre
    en changant d'hébergeur global sur off mon code avec les sessions ne fonctionne plus j'ai bien suivi les conseils avec $_SESSION à la place de session_register cela ne marche pas
    dans la page suivante il dit qu'il connait pas la variable
    voici mon code d'insert dans la base de donnée ou je memorise pour envoye r un mail dans une autre page les infos
    ma question est la suivante dans la nouvelle version comment declare ton une var en php
    $nom=strtoupper($nom);

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    if(isset($_POST['ok'])){
    $email=trim($email);
    $nom=strtoupper($nom);
    require_once('Connections/webcar.php');
    mysql_select_db($database_webcar, $webcar);
    $query_rsClient = "SELECT email FROM membre WHERE email = '$email' ";
    $rsClient = mysql_query($query_rsClient) or die(mysql_error());
    $totalRows_rsClient = mysql_num_rows($rsClient);
    if ($totalRows_rsClient==0)
    {
    $insertSQL = "INSERT INTO membre (idreg,civilite,statut,nom,prenom,adresse,cp,ville,telephone,gsm,email,pass,datem) VALUES ('$idreg','$civilite','$statut','$nom','$prenom','$adresse','$cp','$ville','$telephone','$gsm','$email','$pass',now())";
    $Result1 = mysql_query($insertSQL) or die(mysql_error());
    $idmembre=mysql_insert_id();
    $idmembre=$_SESSION['idmembre'];
    $email=$_SESSION['email'];
    $nom=$_SESSION['nom'];
    //session_register("pass");
    //session_register("nom");
    //session_register("prenom");
    //session_register("statut");
    header("Location: membre.php"); // ici si tout est ok on redirige le visiteur vers son menu.php
    }// fin du if ($totalRows_rsClient==0)
    else
    {
    $erreur_mail=1;
    }
    }
    ?>

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Effectivement, si $nom et $email proviennent d'un formulaire (méthode POST), il faut écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $email=trim($_POST['email']);
    $nom=strtoupper($_POST['nom']);
    En supposant que ces champs existent (ie formulaire validé).


    Julp.

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 295
    Points : 135
    Points
    135
    Par défaut
    et si la variable n'est pas issue d'un formulaire mais simplement un var declaree comme ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
      <?php
      if ($erreur_mail==1)
      {
     
     ?>

Discussions similaires

  1. Réponses: 10
    Dernier message: 26/09/2009, 18h02
  2. [Forum] register_globals off formulaire
    Par menthol34 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 18/03/2009, 12h10
  3. [Mail] Compatibilité avec register_globals=off
    Par joboy84 dans le forum Langage
    Réponses: 3
    Dernier message: 05/04/2008, 03h31
  4. register_globals Off et ini_set possible ?
    Par OliskeN dans le forum OVH
    Réponses: 2
    Dernier message: 19/02/2008, 22h26
  5. Réponses: 14
    Dernier message: 14/05/2006, 20h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo