[PHP Mysql] Probleme bizarre "Array"

johandev Messages postés 9 Statut Membre -  
kij_82 Messages postés 4260 Statut Contributeur -
Bonjour, j'avais posté un sujet il n'y a pas tres longtemps concernant une liste déroulante.
J'ai réussi a créer cette liste.
Maintenant je désire mettre une valeur par défaut dans ma liste déroulante, jusque la, pas de problème, mais je souhaite que cette valeur soit le résultat d'une requête.
Voila mon code :


// Connexion déjà effectué.

$defaut_req = 'Select LIBELLE_TYPE_LOG from type_log where CODE_TYPE_LOG = 1';
$defaut = mysql_query($defaut_req) ; 
$def = mysql_fetch_assoc($defaut);


<?
    $ld = "<SELECT NAME='list_Type_Log'>";
    $ld .= "<OPTION VALUE=0>$def</OPTION>";
// On boucle sur la table
while ( $row = mysql_fetch_array( $result)) {
     
    $CODE_TYPE_LOG = $row["CODE_TYPE_LOG"];
    $LIBELLE_TYPE_LOG = $row["LIBELLE_TYPE_LOG"];
    $ld .= "<OPTION VALUE='$CODE_TYPE_LOG'>$LIBELLE_TYPE_LOG</OPTION>";
 }
$ld .= "</SELECT>";

print $ld;




Ce code m'affiche bien la liste déroulante, avec comme valeur par défaut le mot "Array" ! ça me parait assez bizarre ! Puisque le résultat de ma requête doit normalement être "New". Et lorsque je fais un echo du résultat de ma requête il me met aussi "Array". Alors que dans la base de données il n'y a évidement pas de valeur Array.

Merci de m'aider a résoudre ce problème qui me parait assez louche !!
A voir également:

3 réponses

oberion Messages postés 1255 Statut Membre 249
 
Hello,

$def ne contient qu'un tableau de résultat. Normal donc que PHP te renvoie Array (tableau). :)
Lis cette page: phpbdd
0
lefou4 Messages postés 73 Statut Membre 44
 
De plus tu fais appel à $result qui n'a pas été défini auparavant.

$result= mysql_query($defaut_req,$db) ;
// $db est la connexion à ta BDD
0
kij_82 Messages postés 4260 Statut Contributeur 857
 
si si, là n'est pas le probleme le $result doit etre défini avant, ce n'est qu'une partie du code :)


Faut juste changer :
$ld .= "<OPTION VALUE=0>$def</OPTION>";

par :
$ld .= "<OPTION VALUE=0>".$def["LIBELLE_TYPE_LOG"]."</OPTION>";


Comme l'a signalé oberion
0