Проблема с получением результатов с php и mysqli - PullRequest
0 голосов
/ 14 ноября 2018

У меня проблема с запуском этого php-скрипта:

<?php
$link = mysqli_connect("localhost", "root", "*******", "adsb");

/* check connection */
if ($conn->connect_error) {
    die("Connection failed: " . $link->connect_error);
}

$query = "SELECT aircrafts.id, heli.reg, heli.hex, heli.typ, heli.opp, aircrafts.flight, aircrafts.altitude, aircrafts.lat, aircrafts.lon, aircrafts.squawk, aircrafts.message_date FROM `aircrafts` JOIN `heli` ON aircrafts.hex=heli.hex WHERE aircrafts.id='2414';";
$query .= "SELECT aircrafts.id, plane.reg, plane.hex, plane.typ, plane.opp, aircrafts.flight, aircrafts.altitude, aircrafts.lat, aircrafts.lon, aircrafts.squawk, aircrafts.message_date FROM `aircrafts` JOIN `plane` ON aircrafts.hex=plane.hex WHERE aircrafts.id='2414'";

$result = mysqli_multi_query($query);
/* execute multi query */
if ($result->num_rows > 0) {
    echo "<h1>INFO ABOUT FLIGHT RECORD &nbsp;" . $id . "</h1>";
    echo "<table><th>Registratie</th><th>ICAO24</th><th>Type</th><th>Operator</th><th>Callsign</th><th>Squawk</th><th>Time</th></tr>";

    while ($row = $result->fetch_assoc()) {
        echo "<tr><td><a href='aircraft.php?hex=" . $row["hex"] . "'>" . $row["reg"] . "</a></td><td>" . $row["hex"] . "</td><td><img src='/database/SilhouttesLogos/" . $row["typ"] . ".bmp' /></td><td><img src='/database/OperatorFlags/" . $row["opp"] . ".bmp' /></td><td>" . $row["flight"] . "</td><td>" . $row["squawk"] . "</td><td>" . $row["message_date"] . "</td></tr>";
    }
    echo "</table>";
} else {
    echo "0 results";
}

/* close connection */
mysqli_close($link);

Когда я запускаю 2 запроса в phpmyadmin, я получаю 1 результат.(Когда я запускаю 1 запрос на своем сайте, я тоже получаю результат, см. Код внизу этого поста) Но когда я запускаю его на своем сайте, он показывает «0 результатов».

Итак ...должен быть фолдом в разделе $ result.

Кто может помочь?: -)

<?php
$servername = "localhost";
$username = "root";
$password = "*****";
$dbname = "adsb";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT aircrafts.id, heli.reg, heli.hex, heli.typ, heli.opp, aircrafts.flight, aircrafts.altitude, aircrafts.lat, aircrafts.lon, aircrafts.squawk, aircrafts.message_date FROM `aircrafts` JOIN `heli` ON aircrafts.hex=heli.hex WHERE aircrafts.id=2414";

$result = $conn->query($sql);

if ($result->num_rows > 0) {
    echo "<table><th>Registratie</th><th>ICAO24</th><th>Type</th><th>Operator</th><th>Callsign</th><th>Squawk</th><th>Time</th></tr>";

    while ($row = $result->fetch_assoc()) {
        echo "<tr><td><a href='aircraft.php?hex=" . $row["hex"] . "'>" . $row["reg"] . "</a></td><td>" . $row["hex"] . "</td><td><img src='/database/SilhouttesLogos/" . $row["typ"] . ".bmp' /></td><td><img src='/database/OperatorFlags/" . $row["opp"] . ".bmp' /></td><td>" . $row["flight"] . "</td><td>" . $row["squawk"] . "</td><td>" . $row["message_date"] . "</td></tr>";
    }
} else {
    echo "0 results";
}

$conn->close();

1 Ответ

0 голосов
/ 14 ноября 2018

Это, вероятно, ваша конкретная проблема.

$result = mysqli_multi_query($query);

Вот PHP Doc

Вам необходимо установить соединение.

$result = mysqli_multi_query($link, $query);

Как и другие, упомянутые в комментариях, я бы рефакторинг этого кода.

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