2012-01-11 4 views
5
<?php 

    function get_user_id($username) { 
     return mysql_result(mysql_query("Select id From users Where username = '" . mysql_real_escape_string($username) . "'"), 0); 
    } 

    $sql = "select * from rating 
    WHERE user_id=" . get_user_id($myusername) . " 
      ORDER BY punkte ASC"; 
    $query = mysql_query($sql); 
    while ($row = mysql_fetch_array($query)) { 
     $catid = $row['rating_id']; 
     $catname = $row['song_id']; 
     echo "<li id='item_$catid' class='ui-state-default'><span class='ui-icon ui-icon-arrowthick-2-n-s'></span>$catname</li>"; 
    } 
    ?> 

UPDATE:SQL обновления заявление данных только одного пользователя

К сожалению, я нашел ошибку, это было довольно глупо:

$catid = $row['rating_id']; 
    $catname = $row['song_id']; 

Оно должно быть:

$catid = $row['song_id']; 
$catname = $row['song_name']; 

Итак, спасибо всем! Как всегда: Вы не можете понять это, прежде чем отправить вопрос на StackOverflow :)

+0

Скажите, пожалуйста, какое значение вы получаете от get_user_id ($ myusername)), выполнив echo exit. –

+0

+1 для хорошо написанного первого вопроса - добро пожаловать в stackoverflow,) – kontur

+0

Спасибо! Я обнаружил, что не так, и теперь я обновил вопрос до другого. – Algeron

ответ

1

Для вашего нового вопроса, вы можете решить с внутренним соединением:

select s.song_name from rating r 
inner join songs s on s.song_name_id = r.song_id 
0

Да,

$ catid = $ row ['rating_id']; // Рейтинг идентификатор не связан с песней

К

$ CatID = $ строки [ 'song_id']; $ catname = $ row ['song_name'];

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