2013-03-19 2 views
0

Этот PHP-код предназначен для написания имен для пользователей, которые следуют за ними. Они его друзья или если они не являются его друзьями, должны показывать <td>&nbsp; &nbsp; &nbsp;<input type="submit" id="downloadbut" value="Follow"></td>, если есть его друзья должны показать echo '<td>&nbsp; &nbsp; &nbsp;<span id="liketextvote">Following</span></td>';, если пользователь Следуя за ними. Но моя проблема в том, что я не могу получить результат для друзей. Проблема заключается в томPHP-массив внутри внутри цикла

Примечание: Массив для преобразования строки в C: \ XAMPP \ HTDOCS \ Edu \ 1111111111111 \ userinfo.php на линии 109 массиву

. Но внутри while результат цикла: megiantongeorgekatimery - это пример из базы данных MySQL. У меня нет идей, как я могу получить эти результаты. Кто-то может помочь?

$userfile = $_GET['username']; 
$username = $user_data['username']; 

if ($username != $userfile) { 
    $addfriends = mysql_query("SELECT `follow` FROM `friends` WHERE `username` = '$username' ORDER BY id DESC"); 
    $friends = array(); 

    while ($query_row = mysql_fetch_array($addfriends)) { 
     $val = $query_row['follow']; 
     echo $val; // hier I can get result example five name megiantongeorgekatimery 
     $friends[] = $val; 
    } 

    echo $friends; // hier I can get result example five name megiantongeorgekatimery 

    if (!in_array($userfile, $friends)) { 
     echo '<form action="addfriends.php?username='.$userfile.'" method="post"> 
        <td>&nbsp; &nbsp; &nbsp;<input type="submit" id="downloadbut" value="Follow"></td> 
       </form>'; 
    } else { 
     echo '<td>&nbsp; &nbsp; &nbsp;<span id="liketextvote">Following</span></td>'; 
    } 
} 
+0

Таким образом, вы просто хотите, чтобы распечатать «После» в цикле? –

+0

Является ли строка 109 ... if (! In_array ($ userfile, $ friends)) {? Каково значение $ userfile? – SomeSillyName

+0

У вас есть [огромная безопасность] (http://en.wikipedia.org/wiki/SQL_injection) дыра. Прочтите здесь, как предотвратить это: http://stackoverflow.com/questions/60174/how-to-prevent-sql-injection-in-php – PeeHaa

ответ

4

Вы пытаетесь echo массив, когда вы делаете echo $friends.

Если это просто отладочный, используйте print_r вместо

print_r($friends); 
+0

Вот и спасибо – user1929805

1

Вы начинаете с использования $ friends в качестве массива.
Если вы хотите распечатать данные из массива, пройдите через него, используя foreach или соедините все вместе перед печатью.

foreach ($friends as $friend) {print "$friend<br>";} 

ИЛИ

print join("<br>",$friends); 
+0

Вот оно, спасибо – user1929805

Смежные вопросы