0

困ったことがあって、実は期待通りの表示をするだけのhtmlコードのphpのコード扱いを切り分けたいと思っています。

そのために、私はすべての処理をphp関数で行い始めました。

それらの1つは次のようになります。

<?php 

/**
 * FONCTION DE CREATION DES ANNONCES (page add-annonce.php)
 *  
 */

function saveAnnonce($form, $annonce, $to, $session) {
    $sql = "SELECT `nom`,`prenom`, FROM `gestionnaire` WHERE `id`='{$session}'";
    $result = mysql_query($sql);
    $donnees = mysql_fetch_assoc($result);
    if (isset($form)) {

        $by = $donnees['nom'] . ' ' . $donnees['prenom'];
        $sql = "INSERT INTO `cometchat_announcements` SET
    `announcement`  ='" . mysql_real_escape_string($annonce) . "',
    `by`            ='" . mysql_real_escape_string($by) . "',
    `time`          ='" . mysql_real_escape_string(time()) . "',
    `to`            ='" . mysql_real_escape_string($to) . "'";
        mysql_query($sql);
        echo "<div class=\"success\">L'annonce a bien été ajoutée , vous pouvez continuer vos actions<br>La mise à jour interviendra après actualisation</div>";
        echo "<SCRIPT type=\"text/javascript\"> 
<!-- 
alert(\"Ajout d\'une nouvelle annonce : Ok !\");
// --> 
</SCRIPT> ";
    }
};

if(isset($_POST['enreg']))
{
   saveAnnonce($_POST['enreg'], $_POST['annonce'],$_POST['to'], $_SESSION['id']);
}
     ?>

問題は、最初のクエリを使用して $donnees を返す必要がある最初の関数にあります。

これをecnd関数で使用しようとすると、機能しません。実際には空白が表示されますが、最初のクエリは期待される適切な値を返すと確信しています。

したがって、最初の関数の mysql_query の mysql_fetch_assoc である $donnees を返すと、なぜ理解できません。$donnees['nom'] と入力すると空白が表示されるのはなぜですか?

実際には何も表示されません。しかし、100% 値が存在すると確信しています。

どんな種類の助けも大歓迎です。

4

0 に答える 0