Syntaxe input

Résolu
danielos77 Messages postés 109 Statut Membre -  
danielos77 Messages postés 109 Statut Membre -
Bonjour,

Le script suivant fait bien la requête dans la table.
L'affichage du résultat avec les 2 "echo" dans le script de la requête se fait bien, par contre impossible d'avoir l'affichage dans l'input plus loin.

<?php  //Connection avec la BDD.
	include('secure/connex.php');
	mysql_connect($SQLhost, $SQLlogin, $SQLpass) or die(mysql_error());
	mysql_select_db('base_donnees',$db) or die(mysql_error());
	// Requete pour n'avoir qu'une fois le nom
	$sql = 'SELECT DISTINCT Nom, Prenom FROM table WHERE Num="'.$Num.'"';
	$resultat=mysql_query($sql);
	while($ligne=mysql_fetch_array($resultat)){
	echo $ligne['Nom'].'<br/>';
 	echo $ligne['Prenom'].'<br/>';
	}
 ?>


<p align="left"><LABEL for="Nom">Nom  :  </LABEL>

<?php echo '<input type="text" name="Nom" value="'.$ligne['Nom'].'"/> '.$ligne['Nom'].''; ?>


Idem si j'essaie,

 <input type="text" name="Nom" value="<?php .$ligne['Nom']. ?>" />


Si quelqu'un a la bonne syntaxe...
Merci d'avance

Daniel

Configuration: Windows / Firefox 74.0


--

6 réponses

  1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Bonjour,

    Plusieurs soucis dans ton code...
    Déjà, normal que ça ne t'affiche rien, puis la variable $ligne est dans le while.. et que tu essaies de t'en servir en dehors.

    Tu as également un include d'un fichier sensé contenir la connexion à ta bdd... mais tu l'as remet en dessous ?
    include('secure/connex.php');
    mysql_connect($SQLhost, $SQLlogin, $SQLpass) or die(mysql_error());
    


    Que contient ton fichier connex.php ?

    Sachant que, dans le code que tu nous montres, tu utilises l'ancienne extension mysql qui est désormais obsolète.
    Il faut que tu passes à PDO ou Mysqli
    https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
    (perso j'ai une préférence pour PDO )

    1
  2. danielos77 Messages postés 109 Statut Membre 2
     
    Bonjour,
    Oui, je ne suis pas encore passé à PDO....
    Mon connex contient le s valeurs de $SQLhost, $SQLMlogin et $SQLpass , il n'y a poas la bdd dedans c'est pour ça qu'elle en dessous.
    Sinon, pour $ligne, je comprend mai ssi j'utilise $resultat c'est idem ! et elle n'est pas dans le while...

    --
    0
    1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       
      C'est bien le moment de passer à PDO.
      0
  3. danielos77 Messages postés 109 Statut Membre 2
     
    Merci pour la correction avec le while.

    Pour le PDO, je m'y mettrai quand j'aurai plus cette continuelle erreur à l'affichage de mon fichier d'essai PDO.php ;-(

    Parse error: syntax error, unexpected '{' in /mnt/162/sda/0/e/xxx/PDO.php on line 16

    Ligne 16 qui correspond au try {

    Merci encore et bonne soirée.

    --
    0
    1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       
      Quelle version de PHP utilises tu ?
      0
    2. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       
      Sachant que pour t'aider à corriger cette erreur, il faudrait nous montrer l'ensemble du code.
      Il se peut que tu aies mal fermé une parenthèse, une accolade ou un point-virgule avant...

      Je t'invite également à suivre les infos données ici :
      https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
      0
  4. danielos77 Messages postés 109 Statut Membre 2
     
    Bjr,
    Pour la version,
    Current PHP version: 4.4.3-dev

    Pour le code, c'est un copier coller de

    <!DOCTYPE html>
        <html>
            <head>
                <title>Cours PHP / MySQL</title>
                <meta charset="utf-8">
                <link rel="stylesheet" href="cours.css">
            </head>
            <body>
                <h1>Bases de données MySQL</h1>  
                <?php
                    $servername = 'localhost';
                    $username = 'root';
                    $password = 'root';
                    
                    //On essaie de se connecter
                    try {
                        $conn = new PDO("mysql:host=$servername;dbname=bddtest", $username, $password);
                        //On définit le mode d'erreur de PDO sur Exception
                        $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
                        echo 'Connexion réussie';
                    }
                    
                    /*On capture les exceptions si une exception est lancée et on affiche
                     *les informations relatives à celle-ci*/
                    catch(PDOException $e){
                      echo "Erreur : " . $e->getMessage();
                    }
                ?>
            </body>
        </html>
    

    et en remplaçant juste localhost par mon serveur sql.free.fr, le root username par le login, le password par... le mdp en laissant les guillemets de chaque côté et le point-virgule à la fin de chaque variable. Le tout dans un fichier PDO.php
    0
    1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       
      Php 4 ?????
      Aie... Totalement obsolete.
      Pdo ne fonctionne qu'à partir de php 5.3

      A minima il faudrait que tu passes a la version 5.6
      Mais le mieux serait de passer en 7.3
      0
      1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830 > jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention  
         
        Pour se faire, tu dois créer (si tu n'en a pas déjà un ) un fichier .htaccess à la racine de ton site et y mettre :

        Pour passer en php 7.3
        php73 1
        


        Pour passer en php 5.6
        php56 1
        
        0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. danielos77 Messages postés 109 Statut Membre 2
     
    J'ai fais .htaccess et mis tout seul dedans
    php73 1 comme suggéré.
    Quand je lance Version.php

    <?php
    echo 'Current PHP version: '. Phpversion();
    ?>


    j'ai une belle page Free "Erreur 500 - Erreur interne du serveur"
    idem avec php56 1
    j'ai effacé le fichier .htaccess que j'avais par ailleurs mais ça ne change rien pour les 2 tests.

    J'ai une question mais c'est en rapport avec ma demande initiale. Vaut-il mieux que j'ouvre un nouveau message ou je poste ici ?

    --
    0
  7. danielos77 Messages postés 109 Statut Membre 2
     
    C'est fait..
    Current PHP version: 5.6.34
    c'est le .htaccess qui devait être ainsi
    <IfDefine Free>
    php56 1
    </IfDefine> 


    Bon, il n'y a plus qu'à reprendre certaines pages ; et peut-être que mon PDO va fonctionner....

    --
    0