Почему эта переменная не получает значение? - PullRequest
0 голосов
/ 20 августа 2011
<?php                                                                        
                #Show Recent Comments
                $theCommentID = $row['CommID'];
                echo "<h2 style='margin:0; padding:0;'>Recent Comments</h2>";
                if ($sth2->rowCount()) {                                     
                while($row = $sth2->fetch(PDO::FETCH_ASSOC)) {               
                    echo "<div class='comment'>by <em>{$row22['uname']}</em> on {$row['date']} about <code><a href='course.php?cID={$row['cID']}'>{$row['prefix']} {$row['code']}</a>&nbsp;</code>  during  {$row['Qtr']},  {$row['Yr']} <span style='float:right; padding-right:5px;'><img src='img/report.png' /> 
                    <a class='report' href='report.php?commID={$row['CommID']}'>Report</a></span><br />{$row['info']} </div>";
                    }                                                        
                }                                                            
                else {                                                       
                echo "<h2 style='color:red;'> No Comments Found, please add some below</div>";
                }
                unset($sth2);                                                                                                                
?>  

$pdo = new PDO('mysql:host=host;dbname=db', $u, $p);
$pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$sth = $pdo->prepare('
    SELECT name, lname, fname, picpath, email
    FROM Department, Professor
    WHERE pID = ?
    AND Department.dID = Professor.dID;
    ;');
$sth->execute(array(
    $pID
));
?>

<?php
// Get any professor comments currently present ON LOAD
$pID2 = filter_input(INPUT_GET, 'pID', FILTER_SANITIZE_NUMBER_INT);
        $pdo2 = new PDO('mysql:host=host;dbname=db', $u, $p);
        $pdo2->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
        $sth2 = $pdo2->prepare('
SELECT C.cID, Co.CommID, prefix, code, info, date, Qtr, Yr
FROM Course C, Comment Co, Professor P
WHERE P.pID = ?
AND C.cID = Co.CName AND P.pID = Co.pID 
ORDER BY Yr DESC;
             ');
        $sth2->execute(array(
            $pID2
        ));

?>
<?php
// Get the user of the comment
$pID22 = filter_input(INPUT_GET, 'pID', FILTER_SANITIZE_NUMBER_INT);
        $pdo22 = new PDO('mysql:host=host;dbname=db', $u, $p);
        $pdo22->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
        $sth22 = $pdo22->prepare("
        SELECT uname FROM Student S, Comment C WHERE S.usrID = C.usrID and commID='$theCommentID';
             ");
        $sth22->execute(array(
            $pID22
        ));

?>  

Почему <em>{$row22['uname']}</em> абсолютно не имеет значения?

Я пытался протестировать запрос sth22 в базе данных, чтобы убедиться, что он дал мне то, что мне нужно, прежде чем пытаться это сделать.

Ответы [ 2 ]

2 голосов
/ 20 августа 2011

Не похоже, что $ row22 когда-либо устанавливает значение для меня.Из того, что я могу сказать, 22 не должно быть там в строке 7.

0 голосов
/ 20 августа 2011

Стоит просто прочитать ...

<em>{$row['uname']}</em>

22 там не принадлежит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...