PHP Code für Datenbankzugriff

Clocker 2800+

Lt. Commander
Registriert
Apr. 2007
Beiträge
1.409
Hi.

(ja, ich bin´s schon wieder) ;)

Ich bräuchte eine sehr gute Seite, Code, Links, ...
die Beispiele und Codes für einen MySQL-Datenbankzugriff mit php zeigen.

Also über die Verbindung, (Unter)-Einträge (Tabellen) erstellen, Einträge durchsuchen, auslesen, ..., Verbindung trennen.
 
Super.

CREATE TABLE News ( Spaltendefinition );

Achtung - Dies ist ein MySQL Befehl. Versucht nicht diesen Code direkt in eurem PHP Script zu schreiben. Dies ist ein MySQL-Befehl und muss entsprechend mit mysql_query gesendet werden.

Aber wie kann ich das von php aus aufrufen ?

PHP:
mysql_query(CREATE TABLE News ( Spaltendefinition ));

--> oder wie ?
 
Lies da halt ein bisschen weiter.
 
ließ dir ab punkt 31. einfach alles durch (schon trarugi das man das noche extra betonen muss? )
 
@Clocker 2800+
punkt 33. Hanni2k schrieb ab punkt 31..

und guck bitte in die php-funktionsreferenz. die gibt's als chm-datei (z.b.) auf www.php.net.
da wirst du lesen, dass die abfrage als datentyp zeichenkette übergeben werden muss.


gruß
hostile
 
Ich hab jetzt mal eine Tabelle mit phpmyadmin erstellt.

Aber ich bekomme einfach keine Abfrage mit php hin. :(

Wer kann mir da helfen ?
 
Und wir sollen jetzt raten was du falsch machst?
 
Was ist daran so schwer, hast du das Tutorial genau gelesen?

Also um eine DB-Abfrage müssen wir:

- uns mit dem Server verbinden (mysql_connect())
- eine Datenbank auswählen (mysql_select_db())
- eine Abfrage machen (mysql_query())
- das Resultat verarbeiten.

So jetzt guckst du mal ins Handbuch.

1. Wurde schon eine Anleitung gepostet
2. Stehen im PHP-Referenzhandbuch auch Beispiele

gruß
hostile

PS: Poste mal deinen Quelltext. Dann sagen wir dir was du falsch machst.
 
Hier mal mein php-Code:

PHP:
# Verbindung zur MySQL-Datenbank aufbauen
		error_reporting(E_ALL);
    		define('MYSQL_HOST',     'localhost');
    		define('MYSQL_USER',     'meine_sql_datenbank');
    		define('MYSQL_PASS',     '#-passwort-für-die-datenbank-#');
    		define('MYSQL_DATABASE', 'testtabelle');
    		$db_link = @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS);
    		if($db_link)
		{
        		echo 'Verbindung zur Datenbank wurde erfolgreich aufgebaut';
			echo '<br />';
			echo '<br />';
    		} 
		else
		{
        		echo '<br />';
			echo 'Es konnte keine Verbindung zur Datenbank aufgebaut werden.';
			echo '<br />';
			echo '<br />';
			echo 'Bitte versuchen Sie es später noch einmal.';
			echo '<br />';
			exit;
    		}
		$db_link_2 = @mysql_select_db("meine_sql_datenbank");
		if($db_link_2)
		{
        		echo 'Datenbank erfolgreich geladen';
			echo '<br />';
			echo '<br />';
    		} 
		else
		{
        		echo '<br />';
			echo 'Es konnte keine Verbindung zur Datenbank aufgebaut werden.';
			echo '<br />';
			echo '<br />';
			echo 'Bitte versuchen Sie es später noch einmal.';
			echo '<br />';
			exit;
    		}

		$abfrage = "SELECT counter FROM testtabelle";
		$ergebnis = mysql_query($abfrage);

		echo $ergebnis;

Und als Ergebnis (Rückgabewert) bekomme ich immer: Resource id #3
Obwohl in der Tabelle: "testtabelle" ein Feld mit "counter" existiert, das die Zahl: 1000000 enthält. :(
 
Mal was Grundsätzliches: Das Quakenet-Tutorial ist schon etwas älter und basiert noch auf den alten Einzelfunktionen. Zum Aneignen von Basiswissen über DBs sicher zu gebrauchen, würde ich dir dennoch raten, die PHP Data Objects anzugucken. Diese recht neue, mit PHP 5.1 eingeführte Erweiterung soll langfristig gesehen die alten Einzelfunktionen ablösen, da sie einige Vorteile gegenüber den alten Funktionen bietet.
 
Clocker 2800+ schrieb:
Und als Ergebnis (Rückgabewert) bekomme ich immer: Resource id #3
Obwohl in der Tabelle: "testtabelle" ein Feld mit "counter" existiert, das die Zahl: 1000000 enthält. :(

Lies doch endlich mal dieses verdammte Tutorial bis zum Ende durch, auf einer der Seite ist mit Beispielen erklärt, wie man auf die zurück gegebenen Werte zugreifen kann und muss.
 
Der Rückgabewert ist auch richtig, eine Resource id. Das Resultat verarbeitet man mit mysql_fetch_*. aus dem PHP-Handbuch:
array mysql_fetch_array ( resource $Ergebnis-Kennung [, int $Ergebnistyp] )

Was muss man übergeben? Richtig, die Resource id.... lies einfach nochmal das Tutorial.... und nochmal... und denk drüber nach.

gruß
hostile
 
Lol? Das steht direkt über dem von dir geposteten Satz:

Die Funktion mysql_query liefert bei einem SELECT-Befehl immer eine Resource-ID. Sie liefert kein Array, keine Zahl und kein String zurück. Selbst wenn man nur einen einzigen Wert ausliest, liefert mysql_query trotzdem eine Resource-ID zurück. In diesem Fall ist die intern erstellte Ergebnistabelle 1x1 Felder groß. Typischer Fehler in PHP ist die direkte Ausgabe des mysql_query Rückgabewertes.
 
Clocker 2800+ schrieb:
Super, ich weiß eben nicht, welchen Fehler ich gemacht habe.

Weil du immer noch nicht das Tutorial weiter gelesen hast.
 
Zurück
Oben