Syntaxe variable de retour

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour à tous,

Je me trouve face à un problème qui me laisse perplexe. J'ai pu réalisé un code PHP avec l'aide de la communauté. J'obtiens bien ce que je désire dans ma variable de sortie.
Mon résultat correspond bien à ce que je souhaite.

Cependant, DRUPAL me mets une erreur lorsqu'il execute mon code PHP en me disant que le format de ma variable de retour est incorrect. On retrouve l'erreur sur l'image 1 et on remarquera aussi le résultat généré (incorrect selon DRUPAL) de mon code PHP.

Mais lorsque je décide de remplacer mon code PHP, dans l'administration du contenu de ma page, par le résultat de mon traitement, DRUPAL accepte le résultat de retour.

Ma question est la suivante: Comment se fait-il que lorsque j'insère directement le résultat généré en statique, DRUPAL accepte. Alors qu'en passant par mon code PHP pour obtenir le même résultat, DRUPAL n'accepte pas ?

Merci de vos réponses ;-)

Fichier attachéTaille
Icône image 1 (2).jpg8.16 Ko
Forum : 
Version de Drupal : 

Merci bcp pour ta réponse Aya. J'ai mis un peu de temps à répondre car je me suis pris quelques jours de repos.

J'ai suivi tes conseils et supprimer carrément tous les commentaires de mes lignes de code mais rien n'y fait. Le problème persiste.

Je rajoute mon code PHP ci-dessous:

<?php

global $user;
$i = 0;

//Connexion au serveur et à la BDD
$link = mysql_connect("localhost", "LOGIN_SERVEUR", "PASS_SERVEUR")
    or die(
"Impossible de se connecter : " . mysql_error());
echo
"conlenection reussie";

$db_selected = mysql_select_db('NOM_BDD');
if (!
$db_selected) {
   die (
'Impossible de sélectionner la base de données : ' . mysql_error());
}

//Requete 1 permettant la recuperation des nid des association_choice de l'utilisateur courant
$query= 'Select nid from node where node.uid='.$user->uid.' and type="association_choice"';
$results= db_query($query);

$tab_retour= array();

//Variable tableau listant l'ensemble des nid de type association_choice de l'utilisateur courant
while($row = db_fetch_object($results)){
  
$tab_retour[]=$row->nid;
}

//Préparation de la variable finale de retour
$retour_final = "array(";

//Requete 2 permettant de rechercher les nid des associations correspond aux nid des association_choice precedents
foreach($tab_retour as $nid){

   $query2 = "
   SELECT field_choose_name_association_nid
   FROM content_field_choose_name_association
 WHERE field_choose_name_association_nid != 'NULL'
    AND nid = "
.$nid;

    $results2= db_query($query2);

 while($row2 = db_fetch_object($results2)){
 
      
$retour_final .= $i." => array('nid' =>".$row2->field_choose_name_association_nid."),";
    
$i++;
 
   }
 
}

$retour_final .= ");";

return $retour_final;

?>

Merci encore à tous pour vos réponses ;-)