MySQL in PHP/html - Zeile anzeigen

A3RO

Mitglied
Hi leutz :D
Ich hab mal wieder n kleenes Problem... hoffentlich sieht das jemand, schließlich ist
der letzte Beitrag in diesem Bereich ein halbes Jahr alt :D
Undzwar möchte ich das man in ein Textfeld eine ID eingeben kann und auf eine weitere Seite geleitet wird
wo man dann die entsprechende Tabellenzeile sieht :D
Das habe ich schon:

<h3>info.php</h3>
HTML:
<html>
 <head>
  <title>Eintrag suchen</title>
  <table border=0 ><tr><td><a href="index.php"><img src="http://images.cooltext.com/4088357.png" width="899" height="83" alt="Cookie Phonebook" /></a></td><td><img src="http://hydra-media.cursecdn.com/minecraft-de.gamepedia.com/7/70/Cookie.png?version=087a25b69caf3413f8036f2a9606aac7" width="150" height="122" alt="Cookie Phonebook" /></a></td><td width="100%" align="right"> <a href="http://localhost/~merlin/login.php">Login!</a></td></tr></table>
  <hr />
 </head>
 <body>
  <h3>Geben sie bitte den Code des Eintrages ein den sie sehen wollen</h3>
  <form method="post" action="anzeige.php">
  <input type="number" id="code" name="code" value="00000001">
  <input type="submit" value="GO!">
  <input type="reset" value="Reset">
  </form>
 </body>

Und in die Anzeige.php(die noch leer ist) soll halt rein dass man eine Zeile aus der Tabelle "Eintrag" angezeigt bekommt(anhand der ID)

außerdem hab ich noch die db.php
<h3>db.php<h3>
PHP:
<?php
global $db;

$db = mysql_connect("localhost", "merlin", "123456");
mysql_select_db("merlin", $db);

?>

Die Tabelle hat die spalten : ID Name Vorname telnummer Geburtstag Strasse hausnr. PLZ Stadt

kann mir jemand ungefähr sagen wie ich das machen kann? :D

LG
Merlin
 
Zuletzt bearbeitet von einem Moderator:
Hi

ein halbes Jahr alt? :confused: Eigentlich nicht...

Die mysql_* - Funktionen sind veraltet, bitte MySQLi oder PDO benutzen.

Und wo genau liegt das Problem?
Da du mysql_connect usw. kennst kannst du eine normale Abfrage vermutlich machen, und mehr ist da nicht nötig.
 
Zuletzt bearbeitet:
schließlich ist der letzte Beitrag in diesem Bereich ein halbes Jahr alt :D

Wie @sheel schon sagte, ist das nicht richtig. ;)

Die ersten 4 Themen in der Liste sind "oben angepinnt". Bedauerlicherweise ist das aktuell nicht mehr sofort ersichtlich (z.B. Farblich). Vielleicht wäre es Angebracht solche Themen (oben angepinnt) auch optisch vom Rest der Themen zu trennen. Ein Fall für die Admins... :D

Zum Beispiel wie in diesem Forum (auch XenForo): http://8wayrun.com/forums/tournament-aftermaths.49/
 
OT: Aktuelle Themen haben in der Liste fett hervorgehobene Titel, zumindest bei mir...
Bei deinem Link seh ich dagegen nichts ( :D ), vermutlich weil das System keine
Ahnung hat, was für mich ohne Cookie oder Account aktuell ist.
Aber besser in die PNs verlagern...
 
Zuletzt bearbeitet:
@sheel

Habe dort auch keinen Account. Kenne es nur wegen XenForo...

Wenn man auf meinen Link klickt, sollte man 2 oben angepinnte Themen sehen, die deutlich von den anderen abgegrenzt sind.
 
Ich kann grad nur MySQL nutzen :/
Nein ich weiß bei mySQL NIX muss noch lernen ich habe schon im Netz gesucht aber zu dem Thema nix gefunden ... wahrscheinlich falsch formuliert...
Jedenfalls möchte ich dass, wenn man in der info.php auf den "GO!"-Button klickt, dass der dir den eintrag der ID anzeigt, die man eingegeben hat :D ich bräuchte wenigstens nen kleenen Hinweis :D
Wat is überhaupt der Unterschied zwischen MySQL und MySQLi ?
 
Ich kann grad nur MySQL nutzen :/
Wat is überhaupt der Unterschied zwischen MySQL und MySQLi ?
Du kannst schon die Datenbank MySQL nutzen, es geht mir beim "veraltet" nur um die Art des Zugriffs aus PHP.
MySQLi heißt einfach die neue Funktionen/Klassensammlung in PHP, die man statt der Alten verwenden sollte.

Also, ein HTML-Formular hast du jedenfalls oben schon. Das hat eine Variable "number", die es beim Go-Klick an eine anzeige.php sendet. Also als Erstes eine anzeige.php machen, und da gleich mit
PHP:
if(!isset($_GET['number']))
{
    /*nichtgesetzt*/
}
prüfen, ob wohl eine number übergeben wurde (man kann anzeige.php ja auch händisch ohne Formular aufrufen und nichts übergeben). In dem Nicht-Übergeben-Fall kann man zB. wieder auf das Formular umleiten (mit dem Befehl header, mit "Location"...) und dann nach header das Script beenden.

Dann die eigentliche Abfrage, dafür einfach mal ein volles Beispiel für MySQLi
PHP:
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
	/*Verbindungsfehler, auch umleiten zu Formular und beenden*/
}

$stmt = $conn->prepare("SELECT bla from bla WHERE id=?");
$stmt->bind_param("i", $_GET['number']);
$results = $stmt->execute();

if (!$results) {
	/*Abfragenfehler, auch umleiten zu Formular und beenden oder so*/
}

while ($result = $results->fetch_object()) {
	//$result ist eine Ergeniszeile, ausgeben oder sonstwas
}

$stmt->close();
$conn->close();
Bei den Kommentaren ist noch Fehlerbehandlung etc. einzufügen, und
die SQL-Anweisung selber hängt davon ab, wie deine Tabelle heißt usw.

Die Zugangsdaten am Anfang können in eine andere Datei ausgelagert werden,
die man dann mit include oder require einbinden kann
 
Danke für den Code ^-^ Ich habe jetzt aber das mal ausprobiert und irgentwie funzt da nix :/ ich habe probeweise ein echo mit hallo an den Anfang der PHP gesetzt aber nichts passiert, dann das gleiche nochmal aber den html code rausgeschnitten , also nur php aber auch nichts !?
(die $username usw. habe ich natürlich ersetzt)
 
HTML:
<html>
 <head>
  <title>Auflistung</title>
  <table border=0 ><tr><td><a href="index.php"><img src="http://images.cooltext.com/4088357.png" width="899" height="83" alt="Cookie Phonebook" /></a></td><td><img src="http://hydra-media.cursecdn.com/minecraft-de.gamepedia.com/7/70/Cookie.png?version=087a25b69caf3413f8036f2a9606aac7" width="150" height="122" alt="Cookie Phonebook" /></a></td><td width="100%" align="right"> <a href="http://localhost/~merlin/login.php">Login!</a></td></tr></table>
  <hr />
 </head>
 <body>
PHP:
 <?php
 $servername = "localhost";
 $username = "merlin";
 $password = "123456";
 $dbname = "merlin";
 $conn = new mysqli($servername, $username, $password, $dbname);
 if ($conn->connect_error) {
   header ( 'Location: error1.php')
 }
 $stmt = $conn->prepare("SELECT bla from bla WHERE id=?");
 $stmt->bind_param("i", $_GET['number']);
 $results = $stmt->execute();
 if (!$results) {
   header ( 'Location: error2.php')
 }
 while ($result = $results->fetch_object()) {
   
 }
 $stmt->close();
 $conn->close();
 ?>
HTML:
 </body>
 </html>
 
Zurück