У меня есть этот код: <?php echo $pinDetails->id;?>
это дает мне уникальный идентификатор и отображает его на моей странице.
Я пытаюсь проверить, является ли этот уникальный идентификатор для одной таблицы также в другой таблице. Затем, если это так, покажите другие данные из этой таблицы.
<?php $data = mysql_query("SELECT * FROM repin WHERE new_pin_id>$pinDetails->id") or die(mysql_error()); while($info = mysql_fetch_array( $data )) { Print "".$info['from_pin_id'].",".$info['new_pin_id'].""; } ?>
Насколько я понимаю, это должно работать нормально, но ничего не появляется. У меня синтаксис неправильный?
Кроме того, есть ли более чистый способ сделать это?
Измените свой запрос как
<?php $data = mysql_query("SELECT * FROM repin WHERE new_pin_id LIKE ".$pinDetails->id) or die(mysql_error()); while($info = mysql_fetch_array( $data )) { Print "".$info['from_pin_id'].",".$info['new_pin_id'].""; } ?>
Вы не можете использовать строчную интерполяцию , напрямую вызывая атрибут объекта.
Попробуй это:
$data = mysql_query("SELECT * FROM repin WHERE new_pin_id>{$pinDetails->id}")
или даже лучше с конкатенацией строк:
$data = mysql_query("SELECT * FROM repin WHERE new_pin_id>" . $pinDetails->id)