Neueste Web-Entwicklung Tutorials
 

PHP Wählen Sie Daten aus MySQL


Wählen Sie Daten aus einer MySQL-Datenbank

Die SELECT-Anweisung wird verwendet, um Daten auszuwählen, aus einer oder mehreren Tabellen:

SELECT column_name(s) FROM table_name

oder wir können die Zeichen * verwenden, um alle Spalten aus einer Tabelle zu wählen:

SELECT * FROM table_name

Um mehr über SQL zu erfahren, besuchen Sie bitte unsere SQL - Tutorial .


Wählen Sie Daten mit MySQLi

Das folgende Beispiel wählt die ID, Vornamen und Nachnamen Spalten aus der MyGuests Tabelle und zeigt es auf der Seite:

Beispiel (MySQLi Object-oriented)

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
    }
} else {
    echo "0 results";
}
$conn->close();
?>
Führen Sie zB »

Codezeilen oben aus dem Beispiel zu erklären:

Zuerst stellen wir eine SQL-Abfrage auf, die die ID, Vorname und Nachname Spalten aus der MyGuests Tabelle auswählt. Die nächste Codezeile führt die Abfrage und legt die resultierenden Daten in eine Variable $ result genannt.

Dann wird die Funktion num_rows() prüft , ob es mehr als Null Zeilen zurückgegeben.

Wenn es mehr als null Zeilen zurückgegeben werden , wird die Funktion fetch_assoc() alle Ergebnisse in ein assoziatives Array stellt die können wir eine Schleife durch. Die while() Schleifenschlaufen durch die Ergebnismenge und gibt die Daten von der ID, Vornamen und Nachnamen Spalten.

Das folgende Beispiel zeigt das gleiche wie das obige Beispiel, in dem MySQLi Verfahrensweise:

Beispiel (MySQLi Procedural)

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) {
    // output data of each row
    while($row = mysqli_fetch_assoc($result)) {
        echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
    }
} else {
    echo "0 results";
}

mysqli_close($conn);
?>
Führen Sie zB »

Sie können auch das Ergebnis in einer HTML-Tabelle setzen:

Beispiel (MySQLi Object-oriented)

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    echo "<table><tr><th>ID</th><th>Name</th></tr>";
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "<tr><td>" .$row["id"]."</td><td>".$row["firstname"]." ".$row["lastname"]."</td></tr>";
    }
    echo "</table>";
} else {
    echo "0 results";
}
$conn->close();
?>
Führen Sie zB »

Wählen Sie Daten mit PDO (+ Prepared Statements)

Das folgende Beispiel verwendet vorbereitete Anweisungen.

Er wählt die ID, Vornamen und Nachnamen Spalten aus der MyGuests Tabelle und zeigt sie in einer HTML-Tabelle:

Beispiel (PDO)

<?php
echo "<table style='border: solid 1px black;'>";
echo "<tr><th>Id</th><th>Firstname</th><th>Lastname</th></tr>";

class TableRows extends RecursiveIteratorIterator {
    function __construct($it) {
        parent::__construct($it, self::LEAVES_ONLY);
    }

    function current() {
        return "<td style='width:150px;border:1px solid black;'>" . parent::current(). "</td>";
    }

    function beginChildren() {
        echo "<tr>";
    }

    function endChildren() {
        echo "</tr>" . "\n";
    }
}

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDBPDO";

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $stmt = $conn->prepare("SELECT id, firstname, lastname FROM MyGuests");
    $stmt->execute();

    // set the resulting array to associative
    $result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
    foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) {
        echo $v;
    }
}
catch(PDOException $e) {
    echo "Error: " . $e->getMessage();
}
$conn = null;
echo "</table>";
?>
Führen Sie zB »