Erreur php

evolution -  
cheese42 Messages postés 890 Statut Membre -
Bonjour,
quelqu'un ma donné ce code mais il ne marche pas:
session_start();

$form = '<form method="post" action=""> '
<p>
<label for="id">Quel est le numéro ?</label><br/>
<input type="text" id="id" name="id" />
</p>
<p>
<label for="mdp">Quel est le mot de passe ?</label><br/>
<input type="password" name="mdp" id="mdp" tabindex="15" />
</p>
<p>
<input type="submit" value="Connexion" />
</p>
</form>';

$comptes = array(
'id1' => 'mdp1',
'id2' => 'mdp2',
// ...
);

if(!empty($_POST)) {
$id = trim($_POST['id']);
$mdp = trim($_POST['mdp']);

if(empty($id) || empty($mdp)) {
$afficher = 'Merci de remplir tous les champs.<br/>'.$form;
} else {
if(array_key_exists($id,$comptes)) {
if($comptes[$id] == $mdp) {
$_SESSION['connecte'] = true;
header('Location: page_protegee.php');
die();
} else
$afficher = 'Mot de passe invalide.<br/>'.$form;
} else
$afficher = 'ID inconnu<br/>'.$form;
}
} else {
$afficher = $form;
}
?>

wampserver me dit que l'erreur est a la ligne 22 ( soit le premier <p>)
(le formulaire ne s'affiche pas)
Configuration: Windows XP
Firefox 3.5.7

7 réponses

  1. cheese42 Messages postés 890 Statut Membre 120
     
    slt, peux tu mettre tout le script à partir de la balise php jusqu'a la derniere stp^^
    ps:
    $form = '<form method="post" action=""> ' <---- ici tu ne devrais pas mettre le '
    ou bien si tu veux juste declarer ta variable, alors ...."post" action=""> ' ;
    0
  2. evolution
     
    j'ai enlevé le "' ' " mais maitenant il n'y a que le lien de la fin qui s'affiche! voici le script:

    <div id="corps">

    <?php
    session_start();

    $form = '<form method="post" action="">
    <p>
    <label for="id">Quel est le numéro ?</label><br/>
    <input type="text" id="id" name="id" />
    </p>
    <p>
    <label for="mdp">Quel est le mot de passe ?</label><br/>
    <input type="password" name="mdp" id="mdp" tabindex="15" />
    </p>
    <p>
    <input type="submit" value="Connexion" />
    </p>
    </form>';

    $comptes = array(
    'id1' => 'mdp1',
    'id2' => 'mdp2',
    // ...
    );

    if(!empty($_POST)) {
    $id = trim($_POST['id']);
    $mdp = trim($_POST['mdp']);

    if(empty($id) || empty($mdp)) {
    $afficher = 'Merci de remplir tous les champs.<br/>'.$form;
    } else {
    if(array_key_exists($id,$comptes)) {
    if($comptes[$id] == $mdp) {
    $_SESSION['connecte'] = true;
    header('Location: page_protegee.php');
    die();
    } else
    $afficher = 'Mot de passe invalide.<br/>'.$form;
    } else
    $afficher = 'ID inconnu<br/>'.$form;
    }
    } else {
    $afficher = $form;
    }
    ?>

    <p>
    <span class="lien"> <a href="nrall.php">allez faire un tour sur les énigmes non-resolues</a></span>
    </p>
    </div>
    </body>
    0
  3. cheese42 Messages postés 890 Statut Membre 120
     
    bon deja le session start c'est avant le id^^
    donc :::

    <?php
    session_start();

    $form = '<form method="post" action="">
    <p>
    <label for="id">Quel est le numéro ?</label><br/>
    <input type="text" id="id" name="id" />
    </p>
    <p>
    <label for="mdp">Quel est le mot de passe ?</label><br/>
    <input type="password" name="mdp" id="mdp" tabindex="15" />
    </p>
    <p>
    <input type="submit" value="Connexion" />
    </p>
    </form>';

    $comptes = array(
    'id1' => 'mdp1',
    'id2' => 'mdp2',
    // ...
    );

    if(!empty($_POST)) {
    $id = trim($_POST['id']);
    $mdp = trim($_POST['mdp']);

    if(empty($id) || empty($mdp)) {
    $afficher = 'Merci de remplir tous les champs.<br/>'.$form;
    } else {
    if(array_key_exists($id,$comptes)) {
    if($comptes[$id] == $mdp) {
    $_SESSION['connecte'] = true;
    header('Location: page_protegee.php');
    die();
    } else
    $afficher = 'Mot de passe invalide.<br/>'.$form;
    } else
    $afficher = 'ID inconnu<br/>'.$form;
    }
    } else {
    $afficher = $form;
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    etc etc...
    </head>
    <body>
    <div id="corps">
    <p>
    <span class="lien"> <a href="nrall.php">allez faire un tour sur les énigmes non-resolues</a></span>
    </p>
    </div>
    </body>
    </html>
    la ca te sort toujours une erreur????? ^^
    0
  4. evolution
     
    eh bien non wamp server ne me donne aucune erreur mais le formulaire ne s'affiche pas...
    il y a juste le lien dans le corps de la page.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. cheese42 Messages postés 890 Statut Membre 120
     
    c normal qu'il ne s'affiche pas tu le declare dans ta variable ^^
    0
  7. evolution
     
    c'est pas moi qui l'ai écrite je ne connait pas le php j'ai juste besoin de sa...
    tu peut me dire comment remédier a sa?
    0
  8. cheese42 Messages postés 890 Statut Membre 120
     
    ben, je ne sais pas ce qui ecrit sur ta page toute entiere mais bon^^---->

    <?php
    session_start();

    $form = '<form method="post" action="">
    <p>
    <label for="id">Quel est le numéro ?</label><br/>
    <input type="text" id="id" name="id" />
    </p>
    <p>
    <label for="mdp">Quel est le mot de passe ?</label><br/>
    <input type="password" name="mdp" id="mdp" tabindex="15" />
    </p>
    <p>
    <input type="submit" value="Connexion" />
    </p>
    </form>';

    $comptes = array(
    'id1' => 'mdp1',
    'id2' => 'mdp2',
    // ...
    );

    if(!empty($_POST))
    {
    $id = trim($_POST['id']);
    $mdp = trim($_POST['mdp']);

    if(empty($id) || empty($mdp))
    {
    $afficher = 'Merci de remplir tous les champs.<br/>'.$form;
    }
    else
    {
    if(array_key_exists($id,$comptes))
    {
    if($comptes[$id] == $mdp)
    {
    $_SESSION['connecte'] = true;
    header('Location: page_protegee.php');
    die();
    }
    else
    $afficher = 'Mot de passe invalide.<br/>'.$form;
    }
    else
    $afficher = 'ID inconnu<br/>'.$form;
    }
    } else
    {
    echo '<form method="post" action="">
    <p>
    <label for="id">Quel est le numéro ?</label><br/>
    <input type="text" id="id" name="id" />
    </p>
    <p>
    <label for="mdp">Quel est le mot de passe ?</label><br/>
    <input type="password" name="mdp" id="mdp" tabindex="15" />
    </p>
    <p>
    <input type="submit" value="Connexion" />
    </p>
    </form>';
    }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    etc etc...
    </head>
    <body>
    <div id="corps">
    <p>
    <span class="lien"> <a href="nrall.php">allez faire un tour sur les énigmes non-resolues</a></span>
    </p>
    </div>
    </body>
    </html>
    0