Probleme script php

rudy10 -  
avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour, j'ai un problème avec mon script, j'ai le message d'erreur suivant: Parse error: syntax error, unexpected $end

voici mon script:

<?php
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);
{
$pseudo=('SELECT * FROM jeuxvideosoluce.net WHERE pseudo=\'$pseudo\'');
$resultat = mysql_query ($pseudo);
$nombre_pseudo=mysql_num_rows($resultat);
{
if($nombre_pseudo==0)
{
header ('Location: inscription_2.php');
}
else
{
header('Location: inscription_2.php');
}
$reponse->closeCursor();
?>

4 réponses

  1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Salut,

    Cette erreur signifie que tu as oublié de fermer une parenthèse ou une accolade.

    $bdd = new PDO('...', 'root', '', $pdo_options); 
    { 
    $pseudo=('SELECT * FROM jeuxvideosoluce.net WHERE pseudo=\'$pseudo\''); 
    Que vient faire cet accolade là ?
    0
  2. rudy10
     
    merci mais du coup j'ai le message d'erreur suivant:
    Parse error: syntax error, unexpected T_ELSE

    voici le script corrigé:

    <?php
    $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);

    $pseudo=('SELECT * FROM jeuxvideosoluce.net WHERE pseudo=\'$pseudo\'');
    $resultat = mysql_query ($pseudo);
    $nombre_pseudo=mysql_num_rows($resultat);
    {
    if($nombre_pseudo==0);
    {
    header ('Location: traitement.php');
    }
    else
    {
    header('Location: inscription_2.php');
    }
    $reponse->closeCursor();
    ?>
    0
  3. adns Messages postés 1152 Statut Membre 153
     
    Bonjour,

    le ";" n'a rien a faire la

    if($nombre_pseudo==0); 
    


    Adns
    0
  4. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Le script n'est toujours pas corrigé, tu as juste déplacé l'accolade.
    D'où provient-elle ? Il n'y a pas de déclaration de fonction/classe, pas de condition, ...

    Et indenter son code peut aider parfois.

    <?php
    $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
    $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);
    
    $pseudo = isset($_GET['pseudo']) ? $_GET['pseudo'] : null;
    
    if($pseudo === null) {
        header('HTTP/1.1 404 Not Found');
        header('Location: 404.php');
        exit;
    }
    
    $sql = 'SELECT * FROM jeuxvideosoluce.net WHERE pseudo="'.$pseudo.'"';
    $resultat = $bdd->query($sql);
    $nombre_pseudo = $resultat->rowCount();
    $resultat->closeCursor();
    
    if($nombre_pseudo == 0) {
        header('Location: traitement.php');
    } else {
        header('Location: inscription_2.php');
    }
    ?>
    0