Probleme d'auorisation?

Signaler
Messages postés
18
Date d'inscription
mardi 6 juin 2006
Statut
Membre
Dernière intervention
21 février 2009
-
Messages postés
18
Date d'inscription
mardi 6 juin 2006
Statut
Membre
Dernière intervention
21 février 2009
-
    Bonjour a toutes et a tous. J'ai un souci avec mon code :
<?php

    session_start();
    //AJOUTER
    if($_POST["envoi"]= ="AJOUTER" && $_POST["code"]!=" " && $_POST["article"]!=" " && $_POST["prix"]!=" ")
    {
        $code=$_POST["code"];
        $article= $_POST["article"];
        $prix= $_POST["prix"];
       
        $_SESSION['code'][]=$code;
        $_SESSION['article'][]=$article;
        $_SESSION['prix'][]=$prix;
       
        }
   
    //VERIFIER
    if($_POST["envoi"]=="VERIFIER")
    {
        echo "\";
        echo \"----
Recapitulatif de votre commande, \";
        echo \"----
&nbsp; code&nbsp; |&nbsp; article&nbsp; |&nbsp; prix&nbsp; |\";
       
        for($i =0; $i<count($_SESSION[\"code\"]); $i++)
        {
            echo \"----
{$_SESSION['code'][$i]},
                  {$_SESSION['article'][$i]},
                  {$_SESSION['prix'][$i]}, \";
            $prixtotal+=$_SESSION['prix'][$i];
            }
       
        echo \"----
PRIX TOTAL, " . sprintf("%01.2f", $prixtotal).", \";
        echo "
";
        }
   
    //ENREGISTRER
    if($_POST["envoi"]=="ENREGISTRER")
    {
        $idfile=fopen("commande.txt", w);
        for($i=0; $i<count($_SESSION["code"]);$i++)
        {
            fwrite($idfile, $_SESSION["code"][$i]." ; ".$_SESSION["article"][$i]." ; ".$_SESSION["prix"][$i]."; \n");
            }
        fclose($idfile);
        }
    $_POST["envoi"]="";

?>

<html>
<head>
<title> Gestion de Panier </title>
</head>

<form action="<?= $_SERVER['PHP SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded">
<fieldset>
<legend>Saisie d'articles</legend>
code : |
,

----

article : |
,

----

prix : |
,

----

</fieldset>
</form>

</html>

En fait il me met les erreurs suivantes au depart mais affiche quand meme mon tableau:
Notice: Undefined index: envoi in c:\program files\easyphp1-8\www\essai panier php\commande.php on line 5
Notice: Undefined index: envoi in c:\program files\easyphp1-8\www\essai panier php\commande.php on line 18
Notice: Undefined index: envoi in c:\program files\easyphp1-8\www\essai panier php\commande.php on line 37

et quand je veut effectuer une commande en ajoutant un produit quelqconque voila ce qu'il me met:
Forbidden

You don't have permission to access /Essai Panier PHP/
Notice: Undefined index: PHP SELF in
c:\program files\easyphp1-8\www\essai panier
php\commande.php on line 55

on this server.

Si vous pouviez m'indiquer l'erreur ... merci d'avance...

11 réponses

Messages postés
373
Date d'inscription
samedi 9 juillet 2005
Statut
Membre
Dernière intervention
11 août 2008

Salut,
Remplace ceci pour enlever les erreurs :
-> "if($_POST["envoi"]= ="AJOUTER" && $_POST["code"]!=" " && $_POST["article"]!=" " && $_POST["prix"]!=" ")" en " if (isset($_POST['envoie']) AND $_POST['envoie'] === 'AJOUTER' AND !empty($_POST['code']) AND !empty($_POST['article']) AND !empty( $_POST['prix']))"
-> "if($_POST["envoi"] == "VERIFIER")" en " elseif(isset($_POST["envoi"]) AND $_POST['envoi'] === 'VERIFIER') "
-> "if($_POST["envoi"] == "ENREGISTRER")" en " elseif($_POST["envoi"]=="ENREGISTRER") "
-> "<? = $_SERVER['PHP SELF'] ?>" en "<?php echo $_SERVER['PHP SELF']; ?>"

Sinon pour l'erreur Forbidden, as tu mis un htaccess dans le dossier ?

For every choice, a consequence (Fable)
Messages postés
18
Date d'inscription
mardi 6 juin 2006
Statut
Membre
Dernière intervention
21 février 2009

j'ai bien remplacer tout ce que tout m'a dit (je t'en remercie ;-)) mais j'ai toujours une erreur du même type concernant :

"if($_POST["envoi"]=="ENREGISTRER")" en "elseif($_POST["envoi"]=="ENREGISTRER")"

ça me fait toujours l'erreur suivante:

Notice: Undefined index: envoi in c:\program files\easyphp1-8\www\essai 2\commande 2.php on line 37

je ne comprends pas pourquoi! Quand à la notion d'acces, je veut pour l'instant que le simuler en local (easy php) et par la suite le mettre sur des pages persos (le panier et que le client  puisse le consulter une fois sur le site).

Merci d'avance pour votre aide !
Messages postés
373
Date d'inscription
samedi 9 juillet 2005
Statut
Membre
Dernière intervention
11 août 2008

Je sais pas ce que je faisait lorsque je t'ai répondu mdr
-> c'est "if($_POST["envoi"]=="ENREGISTRER")" en "elseif(isset($_POST['envoie']) AND $_POST['envoi'] === 'ENREGISTRER')"

For every choice, a consequence (Fable)
Messages postés
18
Date d'inscription
mardi 6 juin 2006
Statut
Membre
Dernière intervention
21 février 2009

super il n'y a plus d'erreur !!! merci beaucoup ! Mais pour l'erreur :

Forbidden
You don't have permission to access /Essai 2/
Notice: Undefined index: PHP SELF in c:\program files\easyphp1-8\www\essai 2\commande 2.php on line 55
on this server.

et comme je l'ai preciser dans un precedent message je souhaite pour l'instant que le simuler en local (easy php) et par la suite le mettre sur des pages persos (le panier et que le client  puisse le consulter une fois sur le site).

merci d'avance pour votre aide tres precieuse !
Messages postés
18
Date d'inscription
mardi 6 juin 2006
Statut
Membre
Dernière intervention
21 février 2009

c'est bon j'ai resolut le probleme du php self ... il manquait le "_" lol

maintenat quand je veut verifier j'ail l'erreur suivante:

Notice: Undefined index: code in c:\program files\easyphp1-8\www\essai 2\commande 2.php on line 24

Notice: Undefined variable: prixtotal in c:\program files\easyphp1-8\www\essai 2\commande 2.php on line 32

encore une fois je vais demander votre aide qui sera la bienvenue !

merci d'avance !
Messages postés
373
Date d'inscription
samedi 9 juillet 2005
Statut
Membre
Dernière intervention
11 août 2008

<?php

session_start();
if(isset($_POST['envoi']) AND $_POST['envoi'] = == 'AJOUTER' AND !empty($_POST['code']) AND !empty($_POST['article']) AND !empty($_POST['prix'])) {
    $_SESSION['code'][] = $_POST['code'];
    $_SESSION['article'][] = $_POST['article'];
    $_SESSION['prix'][] = $_POST['prix'];
}
if(isset($_POST['envoie']) AND $_POST['envoi'] === 'VERIFIER') {
    echo



'  ----

   Recapitulatif de votre commande,
   ----

     &nbsp; code&nbsp; |
    &nbsp; article&nbsp; |
    &nbsp; prix&nbsp; |';
 if (isset($_SESSION['code'])) {
  $i = count($_SESSION['code']);
  $j = 0;
  $prixtotal = 0;
  while ($j < $i) {
   echo

'----

    ',$_SESSION['code'][$j],

',
    ',$_SESSION['article'][$j],

',
    ',$_SESSION['prix'][$j],', ';
    $prixtotal += $_SESSION['prix'][$j];
    $j++;
  }
  echo

'----

   PRIX TOTAL,
   ',sprintf('%01.2f', $prixtotal),', ';
    }
 echo '
';
}
if(isset($_POST['envoie']) AND $_POST['envoi'] === 'ENREGISTRER') {
    if (isset($_SESSION['code'])) {
  $i = count($_SESSION['code']);
  $j = 0;
  $texte = '';
  while($j < $i) {
   $texte = $_SESSION['code'][$j].' ; '.$_SESSION['article'][$i].' ; '.$_SESSION['prix'][$i].'; '."\n";
   $j++;
  }
  $fp = fopen('commande.txt', 'w');
  fwrite($fp,$texte);
  fclose($fp);
 }
}






?>






For every choice, a consequence (Fable)
Messages postés
18
Date d'inscription
mardi 6 juin 2006
Statut
Membre
Dernière intervention
21 février 2009

<?php

    session_start();
    //AJOUTER
    if (isset($_POST["envoie"]) AND $_POST['envoie'] = == 'AJOUTER' AND !empty($_POST["code"]) AND !empty($_POST['article']) AND !empty($_POST['prix']))
    {
        $code=$_POST["code"];
        $article= $_POST["article"];
        $prix= $_POST["prix"];
        
        $_SESSION['code'][]=$code;
        $_SESSION['article'][]=$article;
        $_SESSION['prix'][]=$prix;
        
        }
    
    //VERIFIER
    elseif(isset($_POST["envoi"]) AND $_POST['envoi'] === 'VERIFIER')
    {
        echo "\";
        echo \"----
Recapitulatif de votre commande, \";
        echo \"----
&nbsp; code&nbsp; |&nbsp; article&nbsp; |&nbsp; prix&nbsp; |\";
        
        for($i =0; $i<count($_SESSION[\"code\"]); $i++)
        {
            echo \"----
{$_SESSION['code'][$i]},
                  {$_SESSION['article'][$i]},
                  {$_SESSION['prix'][$i]}, \";
            $prixtotal+=$_SESSION['prix'][$i];
            }
        
        echo \"----
PRIX TOTAL, " . sprintf("%01.2f", $prixtotal).", \";
        echo "
";
        }
    
    //ENREGISTRER
    elseif(isset($_POST['envoie']) AND $_POST['envoi'] === 'ENREGISTRER')
    {
        $idfile=fopen("commande.txt", w);
        for($i=0; $i<count($_SESSION["code"]);$i++)
        {
            fwrite($idfile, $_SESSION["code"][$i]." ; ".$_SESSION["article"][$i]." ; ".$_SESSION["prix"][$i]."; \n");
            }
        fclose($idfile);
        }
    $_POST["envoi"]="";

?>

<html>
<head>
<title> Gestion de Panier </title>
</head>

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="application/x-www-form-urlencoded">
<fieldset>
<legend>Saisie d'articles</legend>
code : |
,

----

article : |
,

----

prix : |
,

----

</fieldset>
</form>

</html>

desoler mais je ne comprends pas pourquoi mais tableau n'affiche pas les articles que je rentre et sa me prend bien la tete! merci d'avance!
Messages postés
373
Date d'inscription
samedi 9 juillet 2005
Statut
Membre
Dernière intervention
11 août 2008

<?php





session_start();
if(isset($_POST[
'envoi'
]) AND $_POST[
'envoi'
] = ==
'AJOUTER'
AND !empty($_POST[
'code'
]) AND !empty($_POST[
'article'
]) AND !empty($_POST[
'prix'




])) {
    $_SESSION[
'code'
][] = $_POST[
'code'




];
    $_SESSION[
'article'
][] = $_POST[
'article'




];
    $_SESSION[
'prix'
][] = $_POST[
'prix'




];
}
if(isset($_POST[
'envoi'
]) AND $_POST[
'envoi'
] ===
'VERIFIER'



) {
    echo



'  ----

   Recapitulatif de votre commande,
   ----

     &nbsp; code&nbsp; |
    &nbsp; article&nbsp; |
    &nbsp; prix&nbsp; |'
;
 if (isset($_SESSION[
'code'
])) {
  $i = count($_SESSION[
'code'
]);
  $j =
0
;
  $prixtotal =
0
;
  while ($j < $i) {
   echo

'----

    '
,$_SESSION[
'code'
][$j],

',
    '
,$_SESSION[
'article'
][$j],

',
    '
,$_SESSION[
'prix'
][$j],
', '
;
    $prixtotal += $_SESSION[
'prix'
][$j];
    $j++;
  }
  echo

'----

   PRIX TOTAL,
   '
,sprintf(
'%01.2f'
, $prixtotal),
', '
;
    }
 echo
'
'
;
}
if(isset($_POST[
'envoi'
]) AND $_POST[
'envoi'
] ===
'ENREGISTRER'
) {
    if (isset($_SESSION[
'code'
])) {
  $i = count($_SESSION[
'code'
]);
  $j =
0
;
  $texte =
''
;
  while($j < $i) {
   $texte = $_SESSION[
'code'
][$j].
' ; '
.$_SESSION[
'article'
][$i].
' ; '
.$_SESSION[
'prix'
][$i].
'; '
.
"
\n
"
;
   $j++;
  }
  $fp = fopen(
'commande.txt'
,
'w'
);
  fwrite($fp,$texte);
  fclose($fp);
 }
}








?>



<html>
<head>
<title> Gestion de Panier </title>
</head>

<form action="<?phpecho $_SERVER['PHP_SELF']; ?>" method="post" enctype="application/x-www-form-urlencoded">
<fieldset>
<legend>Saisie d'articles</legend>
code : |
,

----

article : |
,

----

prix : |
,

----

</fieldset>
</form>

</html>

For every choice, a consequence (Fable)
Messages postés
18
Date d'inscription
mardi 6 juin 2006
Statut
Membre
Dernière intervention
21 février 2009

Grand merci amigo! ça fonctionne avec ajouter et verifier il reste juste quelques erreurs avec enregistrer : j'obtient bien le fichier texte mais seulement avec le code de l'article.

Notice: Undefined offset: 1 in c:\program files\easyphp1-8\www\www\index.php on line 40

Notice: Undefined offset: 1 in c:\program files\easyphp1-8\www\www\index.php on line 40

Voila. Et sinon j'aurais une petite question si en cliquant sur enregistrer je veux que sa enregistre la commande sur une base de données je ferais sa comment?

Merci d'avance , bonne continuation.
Messages postés
373
Date d'inscription
samedi 9 juillet 2005
Statut
Membre
Dernière intervention
11 août 2008

Remplaces "$texte = $_SESSION['code'][$j].' ; '.$_SESSION['article'][$i].' ; '.$_SESSION['prix'][$i].'; '."\n";" par "if (isset($_SESSION['article'][$j]) AND isset($_SESSION['code'][$j]) AND isset($_SESSION['prix'][$j])) $texte .= $_SESSION['code'][$j].' ; '.$_SESSION['article'][$j].' ; '.$_SESSION[ 'prix' ][$j].'; '."\n";" et en même temps (c'est mal passé quand j'ai posté) sépare "<?phpecho" en "<?php echo".

Sinon pour enregistrer dans une base de donnée il faut remplacer le système d'écriture du fichier "commande.txt" par des requetes.

For every choice, a consequence (Fable)
Messages postés
18
Date d'inscription
mardi 6 juin 2006
Statut
Membre
Dernière intervention
21 février 2009

ok c'est a dire que je peux effacer tout ce qui il y a dans enregistrer et mettre le code suivant...

$connexion=mysql_connect("domaine", "login", "pass");
 mysql_select_db("login_db", $connexion);
 
 $code= $_POST["code"];
 $article = $_POST["Zone"];
 $prix = $_POST["prix"];
 
 mysql_query("INSERT INTO Commande VALUES('$code','','$article','$prix')");
 
echo "$code has been insert!";
 
mysql_close();

C'est bien ça ?