Problème avec une fonction php

Résolu
tipi75 Messages postés 723 Statut Membre -  
tipi75 Messages postés 723 Statut Membre -
Bonsoir,

Je suis en train de faire un site web marchand. Dans un script j'appelle une classe et une fonction dans cette classe.

Voici l'appelle à la fonction:

// appel du module principal
$module=$boutique->recup_variable("module","GPC");

Voici le fonction:

function recup_variable($nom, $order='GPCS')
{
for ($i=0; $i<strlen($order);$i++)
{
$x = strtoupper(substr($order, $i, 1));
if (phpversion() < "4.1.0")
{
if ($x == 'G' && !isset($valeur))
{
$valeur = $GLOBALS['GET_VARS']["$nom"];
}
if ($x == 'P' && !isset($valeur))
{
$valeur = $GLOBALS['POST_VARS']["$nom"];
}
if ($x == 'C' && !isset($valeur))
{
$valeur = $GLOBALS['COOKIE_VARS']["$nom"];
}
if ($x == 'S' && !isset($valeur))
{
$valeur = $GLOBALS["$nom"];
}
}
else
{
if ($x == 'G' && !isset($valeur))
$valeur = $_GET["$nom"];

if ($x == 'P' && !isset($valeur))
$valeur = $_POST["$nom"];

if ($x == 'C' && !isset($valeur))
$valeur = $_COOKIE["$nom"];

if ($x == 'S' && !isset($valeur))
$valeur = $_SERVER["$nom"];
}
}
return $valeur;
}

Et voici mon erreur:

Notice: Undefined index: module in C:\Program Files\EasyPHP 3.0\www\nbijoux\classe_boutique.php on line 363
Notice: Undefined index: module in C:\Program Files\EasyPHP 3.0\www\nbijoux\classe_boutique.php on line 366
Notice: Undefined index: module in C:\Program Files\EasyPHP 3.0\www\nbijoux\classe_boutique.php on line 369

Je ne comprend pas le problème

merci de votre aide
Configuration: Windows XP
Firefox 3.5.2

11 réponses

  1. Alain_42 Messages postés 5413 Statut Membre 904
     
    si je comprend bien tu fais une boucle sur GPC

    et tu essayes de recupérer ainsi

    $valeur=$_GET['module']

    $valeur=$_POST['module']

    $valeur=$_COOKIE['module']

    si tu reçois en GET tu ne doit pas recevoir en POST en principre

    donc dans ton appel mets simplement un des 3

    G P ou C
    0
  2. tipi75 Messages postés 723 Statut Membre 27
     
    non ça ne marche pas
    0
  3. tipi75 Messages postés 723 Statut Membre 27
     
    personne ne peut m'aider???
    0
  4. purjus
     
    C po k personn ne veut c k ca boure le mou le php
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. tipi75 Messages postés 723 Statut Membre 27
     
    Je fais une relance pour de l'aide

    Merci de votre aide
    0
  7. tipi75 Messages postés 723 Statut Membre 27
     
    Voici une partie de ma fonction, enfin....ce qui me semble poser problème

    $page_html = file_get_contents($maquette);

    // création du tableau des blocs
    $tab_blocs = $boutique->lire_tableau_blocs($page_html);

    // appel du module principal
    $module=$boutique->recup_variable('module','GP');

    if (!$module)
    $module='accueil';

    $file='module_'.$module.'.php';

    if (file_exists($file))
    include($file);

    Merci pour votre aide
    0
  8. tipi75 Messages postés 723 Statut Membre 27
     
    personne ne peut m'aider????
    0
  9. Alain_42 Messages postés 5413 Statut Membre 904
     
    $module=$boutique->recup_variable('module','GP');

    je persiste tu appelles en passant encore avec GP donc GET et POST
    0
  10. tipi75 Messages postés 723 Statut Membre 27
     
    même si je met get ou post cela ne change rien. J'ai l'erreur qui se porte sur le choix qe j'ai effectué.

    Voici pour preuve:

    // appel du module principal
    $nom_module=$boutique->recup_variable("module","G");

    Notice: Undefined index: module in C:\Program Files\EasyPHP 3.0\www\nbijoux\classe_boutique.php on line 366

    Donc voilà......
    0
  11. tipi75 Messages postés 723 Statut Membre 27
     
    Ce script devrait me permettre d'insérer le module que je souhaite selon le contexte. Le module à inclure est précisé dans l'URL. Si aucun module n'est précisé, c'est le cas sur la page d'accueil alors il faut que j'inclus le module_accueil.php.

    Voilà plus de précision

    Merci de votre aide.
    0
  12. tipi75 Messages postés 723 Statut Membre 27
     
    C'est bon le problème est résolu.
    J'ai changé la fonction error_reporting(E_ALL --> E_ALL~ E_NOTICE) .

    Merci pour votre aide
    0