BlackBoard (http://www.black-board.net/index.php)
- Design, Programmierung & Entwicklung (http://www.black-board.net/board.php?boardid=55)
-- Webdesign (http://www.black-board.net/board.php?boardid=19)
--- PHP mysql_connect() (http://www.black-board.net/thread.php?threadid=19881)
Geschrieben von ramius am 14.02.2005 um 22:02:
mysql_connect()
Moin..
also ich will mit dem folgenden php-script einen wert aus der datenbank auslesen, die auf meinem lokalen webserver liegt.
code: |
1:
2:
3:
4:
|
@mysql_connect();
@mysql_select_db("data");
$list = @mysql_query("SELECT `topic`.`inhalt` FROM topic WHERE (`topic`.`id` =1)");
echo $list; |
|
Das Problem ist, das garnichts angezeigt wird. Die mysql-Abfrage habe ich ausprobiert, PHPmyAdmin liefert das gewünschte resultat.
was mache ich falsch?
MFG Ramius
Geschrieben von uzec am 14.02.2005 um 22:55:
ich kenn mich auch fast nicht mit mysql aus, aber hatte gestern das gleiche problem. mit den @´s unterdrückst du die fehlerausgabe, mach die villeicht weg, dann siehst du eher wo der fehler ist. bei mir hats dann geklappt als ich mysql_connect(); duch mysql_connect("localhost","root",""); ersetzt habe.
Geschrieben von time-walker am 15.02.2005 um 00:43:
schreib erstmal eine datei wo drine du die login daten speicherst.
config.php mit beispiel werten
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
|
<?php
// config.php
error_reporting(E_ALL);
define('MYSQL_HOST', 'localhost');
define('MYSQL_USER', 'time-walker');
define('MYSQL_PASS', '123456');
define('MYSQL_DATABASE', 'time-walker');
?>
|
|
dann legst du ne zweite datei an die connect datei
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
|
error_reporting(E_ALL);
//laden der config datei, zugangsdaten für den mysql server.
include 'config.php';
// verbinden mit dem MYsql server
@mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR
die("Keine Verbindung zur Datenbank. Fehlermeldung:".mysql_error());
// auswahl der datenbank
mysql_select_db(MYSQL_DATABASE) OR
die("Konnte Datenbank nicht benutzen, Fehlermeldung: ".mysql_error());
//auswahl der attribute aus der tabelle
$sql = "SELECT
Topic,
inhalt
FROM
topic;
WHERE
topic,
id =1;";
|
|
so ungefähr könnte es aussehen.
bin mir gerade nicht das sicher mit where.
Geschrieben von LX am 15.02.2005 um 13:29:
Für die SQL-Abfrage selbst genügt
code: |
1:
|
SELECT `inhalt` FROM `topic` WHERE `id`=1 |
|
Die Quotes müssen hier nicht sein, sie sollten verwendet werden, wenn Spalten- oder Tabellennamen SQL-Schlüsselworte sind.
Der Rest wurde schon gesagt, die Funktion zum Verbinden mit der Datenbank (
mysql_connect()) nimmt mehrere Parameter, im einfachsten Fall den Host ('localhost' in diesem Fall), den Usernamen und das Passwort für den Datenbankzugriff.
Geschrieben von ramius am 15.02.2005 um 18:26:
Moin..
zuerst mal Danke für die schnelle Hilfe..
Ich habs jetzt mal so gemacht:
code: |
1:
2:
3:
4:
5:
6:
7:
|
include 'db_login.php';
mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR
die("Keine Verbindung zur Datenbank. Fehlermeldung:".mysql_error());
mysql_select_db(MYSQL_DATABASE) OR
die("Konnte Datenbank nicht benutzen, Fehlermeldung: ".mysql_error());
$sql = mysql_query('SELECT `inhalt` FROM `topic` WHERE `id` =1');
echo $sql; |
|
Die db_login.php sieht so aus:
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
|
<?php
error_reporting(E_ALL);
define('MYSQL_HOST', 'localhost');
define('MYSQL_USER', 'root');
define('MYSQL_PASS', '');
define('MYSQL_DATABASE', 'data');
?> |
|
und das ganze gibt das aus:
^^das ist aber nicht der wert aus der datenbank..
MFG Ramius
Geschrieben von time-walker am 15.02.2005 um 22:04:
jo das ist richtig.
das ist die resource-ID.
wenn du die werte ausgeben willst die in der datenbank stehen musst du es jetzt mit einer schleife machen.
mach am besten so.
code: |
1:
2:
3:
4:
5:
6:
7:
8:
|
$sql = "SELECT inhalt FROM topic WHERE id =1;";
//speichern der resource-ID
$result = mysql_query($sql) OR die(mysql_error());
while($row = mysql_fetch_assoc($result))
{
echo $row['inhalt'];
}
|
|
Forensoftware: Burning Board 2.3.6, entwickelt von WoltLab GmbH