PHP Mysqli код не отображает результаты запроса - PullRequest
0 голосов
/ 22 сентября 2018

Я хочу вывести данные из результата запроса.запрос использует print_r(json_encode($regions)) на другой странице php, но ничего не выводит.У меня нет ошибок в php, я делаю что-то не так в коде mysqli, что он ничего не отображает?

//connecting to database
    <?php
    require_once('DbConnection.php');   
    //querying the database 
    $region_id = isset( $_GET['region_id'] )? $_GET['region_id']: false;
    $sql=mysqli_query($connection,"SELECT sales.region_id, sales.image_name,                 sales.price, sales.location, sales.Terms, sales.Contacts
    FROM sales INNER JOIN region ON sales.region_id=region.region_id  where region_id = $region_id") or die(mysqli_error($connection));
    $result = mysqli_query($connection,"SELECT sales.region_id, sales.image_name, sales.price, sales.location, sales.Terms, sales.Contacts FROM sales INNER JOIN region ON sales.region_id=region.region_id  where region_id = $region_id");             
    while ($row = mysql_fetch_assoc($sql)) {
             ?>
    <div class="col-md-4">
    <div class="thumbnail">
    <a href="<?php echo "http://" . $_SERVER['SERVER_NAME'] ?>/photo/imageuploads/<?php echo $row["image_name"]; ?>">
    <img src="<?php echo "http://" . $_SERVER['SERVER_NAME'] ?>/photo/imageuploads/<?php echo $row["image_name"]; ?>" alt="Lights" style="width:100%">
    <div class="caption">
    Image Name:<?php echo $row["image_name"]; ?>
    Price:<?php echo $row["price"]; ?>
    Location`enter code here`:<?php echo $row["location"]; ?>
    Terms:<?php echo $row["Terms"]; ?>
    Contacts:<?php echo $row["Contacts"]; ?>
    </div>
     </a>
    </div>
    </div>
    <?php
    }
    ?>

1 Ответ

0 голосов
/ 22 сентября 2018

В вашем SQL ваше предложение where относится к region_id, который в этом случае определен в двух таблицах (sales и region), если вам нужны обе эти таблицы, то вам нужно определить, какую таблицу вы хотите использовать region_idиз

$sql=mysqli_query($connection,"SELECT sales.region_id, sales.image_name, 
                                sales.price, sales.location, sales.Terms, sales.Contacts
                   FROM sales     
                   INNER JOIN region ON sales.region_id=region.region_id  
                   where region.region_id = $region_id") or die(mysqli_error($connection));

, но так как вы не используете столбцы из региона в своем результате, вы можете просто отбросить объединение ...

$sql=mysqli_query($connection,"SELECT sales.region_id, sales.image_name, 
                                sales.price, sales.location, sales.Terms, sales.Contacts
                   FROM sales   
                   where region_id = $region_id") or die(mysqli_error($connection));

Также, как говорит Бармар, удалитеповторное выполнение запроса, в противном случае это может привести к сбою и остановке скрипта.

Также, когда вы проверяете, если $_GET['region_id'], это должно быть больше в случае, если он не установлен, тогда не делайтечто-нибудь.Если установить значение false, это вызовет больше проблем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...