<?php
$mysql_addres="localhost";
$mysql_login="root";
$mysql_password="123123";
$mysql_database="l2pdb";
mysql_connect($mysql_address,$mysql_login,$mysql_password);
mysql_select_db($mysql_database);
$items= mysql_query("SELECT object_id, name FROM items");
$att= mysql_query("SELECT itemId, name FROM item_attributes");
$db = mysql_query("SELECT name, name FROM items")
if ($items == $att)
{
echo "$db";
}
else
{
echo 0;
}
?>
выводит ошибку: Parse error: syntax error, unexpected T_IF in www/localhost/main.php on line 13
Спустя 10 минут, 42 секунды (28.04.2011 - 23:41) waldicom написал(а):
Так не пойдет. Опишите точно задачу: что нужно сравнивать и что должны получить на выходе.
Спустя 34 минуты, 39 секунд (29.04.2011 - 00:16) niko42 написал(а):
Думаю так понятнее
<?php
$mysql_addres="localhost";
$mysql_login="root";
$mysql_password="123123";
$mysql_database="l2pdb";
mysql_connect($mysql_address,$mysql_login,$mysql_password);
mysql_select_db($mysql_database);
$items= mysql_query("SELECT object_id FROM items"); //object_id - название столбца в таблице, item сама таблица
$att= mysql_query("SELECT itemId FROM item_attributes"); //itemId - название столбца в таблице, item_attributes сама таблица
$db = mysql_query("SELECT name FROM items") //name - название столбца в таблице, item сама таблица
if ($items == $att) // здесь мы сравниваем два стобца из разных таблиц
{
echo "$db"; // здесь мы выводим результат
}
else
{
echo 0;
}
?>
Спустя 2 минуты, 40 секунд (29.04.2011 - 00:19) waldicom написал(а):
Цитата (niko42 @ 28.04.2011 - 22:16) |
Думаю так понятнее |
Я так не думаю. Попробую угадать:
Вам необходимо вывести все строки из таблицы items, в которых поле "object_id" из таблицы items имеет такое же значение как и поле itemId в таблице item_attributes. Так?
Спустя 3 минуты, 10 секунд (29.04.2011 - 00:22) niko42 написал(а):
Да! =) Вроде правильно все написал.
Спустя 29 минут, 26 секунд (29.04.2011 - 00:51) Ser18 написал(а):
Если я вас правильно понял
$items= mysql_query("SELECT object_id FROM items");
while($row_items = mysql_fetch_assoc($items)){
$att= mysql_query("SELECT itemId FROM item_attributes WHERE itemId='".$row_items['object_id']."'");
$row_$att = mysql_fetch_assoc($att);
echo $row_$att['itemId'].'<br/>';
}
Спустя 10 минут, 36 секунд (29.04.2011 - 01:02) niko42 написал(а):
<?php
$mysql_addres="localhost";
$mysql_login="root";
$mysql_password="123123";
$mysql_database="l2pdb";
mysql_connect($mysql_address,$mysql_login,$mysql_password);
mysql_select_db($mysql_database);
$items= mysql_query("SELECT object_id FROM items");
while($row_items = mysql_fetch_assoc($items))
{
$att= mysql_query("SELECT itemId FROM item_attributes WHERE itemId='".$row_items['object_id']."'");
$row_$att = mysql_fetch_assoc($att);
echo $row_$att['itemId'].'<br/>';
}
?>
Parse error: syntax error, unexpected T_VARIABLE in www/localhost/main.php on line on line 16
Спустя 5 минут, 21 секунда (29.04.2011 - 01:07) Zerstoren написал(а):
$row_$att = mysql_fetch_assoc($att);
опечатка
Спустя 14 минут, 2 секунды (29.04.2011 - 01:21) niko42 написал(а):
Почему Вот так вот нельзя сделать? Т.е. у меня вообще ни чего не выдает. Ведь так проще. Чем Веши сказанно. И то что выше, всеровно не выводит.
<?php
$mysql_addres="localhost";
$mysql_login="root";
$mysql_password="123123";
$mysql_database="l2pdb";
mysql_connect($mysql_address,$mysql_login,$mysql_password);
mysql_select_db($mysql_database);
$att= mysql_query("SELECT * FROM item_attributes");
$items= mysql_query("SELECT * FROM items");
$myrow1 = mysql_fetch_array($att);
$myrow2 = mysql_fetch_array($items);
do
if ($myrow1['itemId'] == $myrow2['object_id']) {
{
echo $myrow2['object_id, name']."<br>";
}
}
while ($myrow = mysql_fetch_array($items));
?>
Спустя 5 минут, 25 секунд (29.04.2011 - 01:27) Ser18 написал(а):
Так вы сравниваете паралельные записи
А в примере выше сравниваются все записи друг с другом
Что у вас не получается с примером который выше?
А в примере выше сравниваются все записи друг с другом
Что у вас не получается с примером который выше?
Спустя 5 минут, 8 секунд (29.04.2011 - 01:32) niko42 написал(а):
ТО что выше у меня выдает ошибку
Parse error: syntax error, unexpected T_VARIABLE in www/localhost/main.php on line on line 16
$items= mysql_query("SELECT object_id FROM items");
while($row_items = mysql_fetch_assoc($items)){
$att= mysql_query("SELECT itemId FROM item_attributes WHERE itemId='".$row_items['object_id']."'");
$row_$att = mysql_fetch_assoc($att);
echo $row_$att['itemId'].'<br/>';
}
Parse error: syntax error, unexpected T_VARIABLE in www/localhost/main.php on line on line 16
Спустя 1 минута, 32 секунды (29.04.2011 - 01:33) Ser18 написал(а):
Вы там даже сравниваете две первые строки таблиц (каждый раз одни и те же) и прогоняете это в цикле
Спустя 1 минута, 31 секунда (29.04.2011 - 01:35) Ser18 написал(а):
Так вам же выше указали на опечатку
Пробуйте так
Пробуйте так
$items= mysql_query("SELECT object_id FROM items");
while($row_items = mysql_fetch_assoc($items)){
$att= mysql_query("SELECT itemId FROM item_attributes WHERE itemId='".$row_items['object_id']."'");
$row_att = mysql_fetch_assoc($att);
echo $row_att['itemId'].'<br/>';
}
Спустя 2 минуты, 5 секунд (29.04.2011 - 01:37) niko42 написал(а):
Цитата (niko42 @ 28.04.2011 - 22:02) |
<?php Parse error: syntax error, unexpected T_VARIABLE in www/localhost/main.php on line on line 16 |
Ошибка при сравнении: Parse error: syntax error, unexpected T_VARIABLE in www/localhost/main.php on line on line 16
Спустя 1 минута, 24 секунды (29.04.2011 - 01:38) niko42 написал(а):
Цитата (Ser18 @ 28.04.2011 - 22:35) |
Так вам же выше указали на опечатку Пробуйте так $items= mysql_query("SELECT object_id FROM items"); |
Спасибо, Вам! Но к сожалению, в итоге ни чего не выводится. пустое окно, но скрипт грузит!
Спустя 3 минуты, 55 секунд (29.04.2011 - 01:42) Ser18 написал(а):
Выдаст только при полном совпадении строк
Спустя 4 минуты, 25 секунд (29.04.2011 - 01:47) niko42 написал(а):
Там должно вывести порядко, более 2 тысяч совпадение. в итоге срипт ни чего не выводит.
Спустя 6 минут, 59 секунд (29.04.2011 - 01:54) Ser18 написал(а):
Сравниваются
Таблица items и вне колонка object_id с таблицей item_attributes и в ней колонка itemId
Так надо было?
Таблица items и вне колонка object_id с таблицей item_attributes и в ней колонка itemId
Так надо было?
Спустя 53 секунды (29.04.2011 - 01:55) niko42 написал(а):
Да
Спустя 5 минут, 8 секунд (29.04.2011 - 02:00) Ser18 написал(а):
Не знаю
Должно выводить если они есть
Должно выводить если они есть
Спустя 12 минут, 39 секунд (29.04.2011 - 02:12) niko42 написал(а):
Цитата (Ser18 @ 28.04.2011 - 23:00) |
Не знаю Должно выводить если они есть |
Они есть 100%, причем совпадений еще раз повтарю более 2 тысяч
Спустя 1 час, 35 минут, 39 секунд (29.04.2011 - 03:48) niko42 написал(а):
Как еще возможно сравнить две таблица, определенные поля в БД MySQL ?=)
Спустя 2 часа, 44 минуты, 50 секунд (29.04.2011 - 06:33) inpost написал(а):
$query = "SELECT b.`itemId`
FROM `items` a
LEFT JOIN `item_attributes` b ON a.`object_id` = b.`itemId`
ORDER BY b.`object_id`";
$res = mysql_query($query) or die(mysql_error());
echo mysql_num_rows($res);
Спустя 19 дней, 10 часов, 35 секунд (18.05.2011 - 16:33) niko42 написал(а):
Актуально.
Спустя 51 минута, 56 секунд (18.05.2011 - 17:25) Krevedko написал(а):
почему актуально. код, который дал inpost правильный, сам о таком думал, когда читал верхние некорректные. Запросы в цикле-моветон.
[php]
$query = "SELECT b.`itemId`FROM `items` a
LEFT JOIN `item_attributes` b
ON a.`object_id` = b.`itemId`
ORDER BY b.`object_id`";
$res = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_assoc($res))
echo $row['name'];
[php]
$query = "SELECT b.`itemId`FROM `items` a
LEFT JOIN `item_attributes` b
ON a.`object_id` = b.`itemId`
ORDER BY b.`object_id`";
$res = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_assoc($res))
echo $row['name'];