Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   PHP, MySQL: Datenbankfeld auslesen (https://www.delphipraxis.net/52826-php-mysql-datenbankfeld-auslesen.html)

malo 4. Sep 2005 22:01


PHP, MySQL: Datenbankfeld auslesen
 
Hi!

Ich versuche mich grade in PHP/MySQL...

Ich möchte einen Datensatz aus der Datenbank auslesen. Der Datensatz sieht folgendermaßen aus:
SQL-Code:
UPDATE `malo_allgemein` SET `title` = ASCII( 'test' ) ,
`id` = ASCII( 'test' ) WHERE `title` = '116' AND `id` = '116' LIMIT 1
Das ist der Code, den phpMyAdmin generiert hat. Tabelle "malo_allgemein" hat also eine Spalte mit den Feldern "title" und "id".

Jetzt möchte ich die auslesen. Das connecten zur DB funktioniert super, mein SQL-Code funktioniert (mysql_query liefert true) etc.

Einmal mein PHP-Code:

Code:
$a = mysql_query('SELECT title FROM malo_allgemein WHERE id="test"');
echo($a);
Jetzt liefert mir das Echo aber "Resource id #3". Wie kann ich mir aber nun den Inhalt des DB-Feldes, "Test" liefern lassen? :gruebel:


Bin noch ziemlich neu in MySQL, von daher... :?

phXql 4. Sep 2005 22:06

Re: PHP, MySQL: Datenbankfeld auslesen
 
http://de2.php.net/manual/de/ref.mysql.php

da sollte alles nötige stehen. falls noch fragen, nur zu ;)

NicNacMan 4. Sep 2005 22:11

Re: PHP, MySQL: Datenbankfeld auslesen
 
ich mach das auch oft mit list().
damit kannst du variablen die werte eines arrays zuweisen:

Code:
$a = mysql_query("SELECT `title` FROM `malo_allgemein` WHERE `id`='test'");
list($out) = mysql_fetch_row($a);
echo($out);

malo 5. Sep 2005 06:48

Re: PHP, MySQL: Datenbankfeld auslesen
 
Ich hab jetzt einen COde von dem ersten Link genommen (und die Zugangsdaten geändert...)

Folgender Code nochmal:

Code:
<?php
include('db.php');
/* Verbindung aufbauen, auswählen einer Datenbank */
$link = mysql_connect($dbhost, $dbuser, $dbpasswd)
   or die("Keine Verbindung möglich: " . mysql_error());
echo "Verbindung zum Datenbankserver erfolgreich";
mysql_select_db("mydb") or die("Auswahl der Datenbank fehlgeschlagen");

/* ausführen einer SQL Anfrage */
$query = "SELECT * FROM malo_allgemein";
$result = mysql_query($query) or die("Anfrage fehlgeschlagen: " . mysql_error());

/* Ausgabe der Ergebnisse in HTML */
echo "<table>\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
   echo "\t<tr>\n";
   foreach ($line as $col_value) {
       echo "\t\t<td>$col_value</td>\n";
   }
   echo "\t</tr>\n";
}
echo "</table>\n";

/* Freigeben des Resultsets */
mysql_free_result($result);

/* schliessen der Verbinung */
mysql_close($link);
?>
Jetzt bringt dieser mir aber die Werte
"116
116"

Was ist jetzt falsch? Muss ich vielleicht bei der Zuweisung der Werte etwas ändern? Der falsche Typ vielleicht? :?

Flocke 5. Sep 2005 08:12

Re: PHP, MySQL: Datenbankfeld auslesen
 
Was genau soll denn falsch sein, die Anführungszeichen? Ich denke mal, in beiden Felder steht 116 drin.

Du bekommst über die Schlüssel der Ergebniszeile übrigens auch die Feldnamen; dann musst du die Schleife so aufbauen:
Code:
   foreach ($line as $col_name => $col_value) {
       echo "\t\t<td>$col_name = $col_value</td>\n";
   }

malo 5. Sep 2005 15:46

Re: PHP, MySQL: Datenbankfeld auslesen
 
Zitat:

Zitat von Flocke
Was genau soll denn falsch sein, die Anführungszeichen? Ich denke mal, in beiden Felder steht 116 drin.

Danke, scheint wirklich der Fehler gewesen zu sein :wall:

Aber ich hätte schwören können, dass in beiden Feldern "test" gestanden hätte :gruebel: naja, egal.

Danke für die Antworten :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:45 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz