Hallo!
Ich überlege, wie ich in Zukunft DB-Verbindungen etwas einfacher einbinden, und vor allem SQL-Abfragen einfacher verwenden kann, unter anderem auch automatisch die MySQL Fehler ausgebe.
Wollte nur mal hören, wie Ihr das macht, irgendwie bekomme ich keine vernünftige Methode zusammen:
<?
verbindung.php
--------------
$host= "xxx";
$usr= "xxx";
$pw= "xxx";
$db= "xxx";
$link=@mysql_connect($host,$usr,$pw)
or die ("die Verbindungsaufnahme dem MySQL-Server ist gescheitert(".mysql_errno().", ".mysql_error().")");
@mysql_select_db($db,$link)
or die ("die Verbindungsaufnahme mit der DB ".$db." ist gescheitert(".mysql_errno().", ".mysql_error().")");
--------------
?>
========================================================
<?
seite.php
---------
function db("$sql"){
// Kontrolle ob Verbinung besteht, geht das auch besser?
if(!mysql_ping()){
include "verbindung.php";}
// Abfrage an DB schicken
$res = mysql_query($sql, $link);
if (!$res)
die("Anfrage $sql scheitert.<br>\n
(".mysql_errno().", ".mysql_error().")");
}
// so könnte ich das dann verwenden
db("INSERT INTO tabelle...");
---------
?>
Aber irgerndwie ist das so nicht optimal. OK, für Inserts schön und gut, aber was wenn es etwas individueller wird, und ich z.B. die Mysql_insert_id möchte? Oder noch komplizierter, wenn ich SELECT verwende, Dann brauche ich ja $res außerhalb der Funktion(wie?), um die Daten letztendlich auch zu bekommen! Jetzt ist die Frage, ob ich die Funktion ausschmücke, sowas der Art
if (substr(0,6)=="SELECT"){
// noch ein bisschen mehr...}
oder ob ich evtl für alles einzelne Funktionen verwende, oder ob man sowas lieber ganz aus Funktionen herausläßt...
Mich interessiert mal Eure Meinung dazu, und wie Ihr sowas löst! Und überhaupt, was sagt Ihr zu meinem Versuch, auch mit den Fehlermeldungen und mit dem mysql_ping()...
Viele Grüße
Andreas