От самото id да вади потребителя от users.

joorkataa

Registered
Значи опитвам се да направя от таблицата forum полето mUser_id това е id-то на потребителя публикувал отговор примерно 9 и искам от самото id да намира от таблицата users полето id номер 9 и вече като го е намерил id-то 9 да вади потребителското име на потребителя с номер 9 , опитах се да го направя по следния начин но нещо не се получава.


PHP:
$result2 = mysql_query( "SELECT * FROM forum_messages JOIN users ON users.id = forum_messages.mUser_id WHERE mBelong=\"" . $mbtopic['mID'] . "\"" );
    while ( $replies = mysql_fetch_array( $result2 ) ) {
	$imeto2 = $replies['name'];
 
Код:
$result2 = mysql_query( "SELECT * FROM `forum_messages` JOIN `users` ON forum_messages.mUser_id=users.id WHERE mBelong=\"" . $mbtopic['mID'] . "\"" );
    while ( $replies = mysql_fetch_array( $result2 ) ) {
        $imeto2 = $replies['name'];
$username= $replies['username'];
 
nom3r1 каза:
Код:
$result2 = mysql_query( "SELECT * FROM `forum_messages` JOIN `users` ON forum_messages.mUser_id=users.id WHERE mBelong="" . $mbtopic['mID'] . """ );
    while ( $replies = mysql_fetch_array( $result2 ) ) {
        $imeto2 = $replies['name'];
$username= $replies['username'];


Е това е същото като моя код само-че е сложен още един ред

PHP:
$username= $replies['username'];

а аз съм го направил с това

PHP:
$imeto2 = $replies['name'];

полето в таблицата users с имената на потребителите е name

Според мен проблема е от заявката.
 
Опитай така:

$result2 = mysql_query( "SELECT fm.*,u.* FROM `forum_messages` as fm JOIN `users` as u ON fm.mUser_id=u.id
WHERE fm.mBelong='{$mbtopic['mID']}'" );

while ( $replies = mysql_fetch_array( $result2 ) ) {
$imeto2 = $replies['name'];
$username= $replies['username'];
}

ако не стане ми дай имената на колоните на двете таблици и ще ти направя аз заявката
 
Не с това не ми се получава.

Ето информация за полетата ми

users е таблицата с потребителите вътре в нея id са номерата на потребителите а name са имената.

forum_messages е таблицата на самия форум вътре в нея mUser_id е полето където се записват id-тата на потребителите.
 
$result2 = mysql_query( "SELECT fm.*,u.* FROM `forum_messages` as fm INNER JOIN `users` as u ON fm.mUser_id=u.id
WHERE fm.mBelong='{$mbtopic['mID']}'" )or die(mysql_error());

while ( $replies = mysql_fetch_array( $result2 ) ) {
$imeto2 = $replies['name'];
$username= $replies['username'];
}

Кажи ми дава ли ти грешка и ако е да кажи каква
 
Аз сигурно съм много изостанал, ама какво е това: '{$mbtopic['mID']}'

rainbowdio каза:
$result2 = mysql_query( "SELECT fm.*,u.* FROM `forum_messages` as fm INNER JOIN `users` as u ON fm.mUser_id=u.id
WHERE fm.mBelong='{$mbtopic['mID']}'" )or die(mysql_error());

while ( $replies = mysql_fetch_array( $result2 ) ) {
$imeto2 = $replies['name'];
$username= $replies['username'];
}

Кажи ми дава ли ти грешка и ако е да кажи каква



Бих предложил следния вариант:
$query = "SELECT * FROM `forum_messages` JOIN `users` ON forum_messages.mUser_id=users.id WHERE mBelong='" . $mbtopic['mID'] . "'" ;
echo $query;
mysql_query($query);

Ако ти дава грешка дай текста на грешката и резултата от echo-то
 
palex каза:
Аз сигурно съм много изостанал, ама какво е това: '{$mbtopic['mID']}'

Ами май наистина си изостанал...
вместо да използващ този начин който си предложил ти ('" . $mbtopic['mID'] . "'" ) се използва "{$mbtopic['mID']}" и ако след mysql_query() ако не използваш or die(mysql_error()) няма да ти покаже грешка а ще направи опит за изпълнение на заявката ако е грешна продължава с кода надоло. За модераторите "Не се заяждам просто обяснявам"

в моя код не е грешката, но да чакаме потребителя да каже каква грешка му дава.
 
Ами не нито 1 не става :/

PHP:
SELECT * FROM `forum_messages` JOIN `users` ON forum_messages.mUser_id=users.id WHERE mBelong='(1 )'


ето това ми е грешката..
 
joorkataa каза:
Никой ли няма представа как ще стане ?


Направи това да видим какво ще излезне:

$query = "SELECT * FROM `forum_messages` JOIN `users` ON forum_messages.mUser_id=users.id WHERE mBelong='" . $mbtopic['mID'] . "'" ;
echo $query;
mysql_query($query);

Ако ти дава грешка дай текста на грешката и резултата от echo-то
 
palex каза:
joorkataa каза:
Никой ли няма представа как ще стане ?

Ако ти дава грешка дай текста на грешката и резултата от echo-то


Излиза ми

PHP:
SELECT * FROM `forum_messages` JOIN `users` ON forum_messages.mUser_id=users.id WHERE mBelong='1'
 

Back
Горе