Clanintern Clanintern Clanintern

Forum

Öffentliche Foren
FORUM: Spiele & Computer THEMA: SQL INSERT in eigene Funktion
AUTOR BEITRAG
Avantasia

RANG Deckschrubber

#1 - 14.03 12:58

Hallo
Ich arbeite mich gerade in eine bestehende Homepage. Und nun habe ich die ganzen SELECT Answeisungen für die Datenbank in eine .inc Dateio geschrieben in Funktionen

Nun will ichdas aber auch mit den INSERT Funktionen machen jedoch müsste ich dann immer die ganzen Variablen die eingefügt werden sollen der Funktion mitgeben

z.b set_Test(x,y,z,r,t,z,u,i)
und das ist sehr umständlich.

kenn jemand ne Idee wie man das geschcikt lösen könnte


Avantasia
horst

RANG Prophet of Clanintern

#2 - 14.03 13:01

"Irgendwie" musst du sie sowieso mitgeben.
Wenn du mit genau der Methodensignatur arbeitest, weiß der Verwender wenigstens was er bereitstellen muss. Alternativ kannst du auch einfach einen $param Array übergeben, der in der Methode ausgewertet wird.

Alles in allem finde ich aber gerade die "ausführlichere" Variante besser, wenn die Funktion wiederverwendet werden soll.
vaest´ark // patrick *ich bin hier nicht der depp*

RANG Master of Clanintern

#3 - 14.03 13:17

geschickte lösung: sowas nicht machen.

es gibt imho nur eine kluge lösung:
$db->query("INSERT INTO %s (a, b, c) VALUES (%d, '%s', '%s')", $table, $a, $b, $c);
$db->query("SELECT a, b, c FROM %s WHERE a=%d", $table, $a);

alles andere ist in meinen augen murks.

allerdings muss ich zugeben, das ich auch sowas hier verwende:
$obj->get[property]([parameterliste]);
$obj->set[property]([parameterliste]);
das mach ich aber nur, wenn ich diesen wert in vielen (nicht allen) scripten brauche (und ggfs ändern muss) und eine wirkliche logik daran gekoppelt ist.
ein simpler sql-query im hintergrund zählt für mich nicht zur logik.
Avantasia

RANG Deckschrubber

#4 - 14.03 19:08

hmm das Problem liegt darien das ich bei meiner Praktikumsaufgabe noch auf der alten Datenbank arbeite und anscheinend soll die später auf ner anderen Datenbank laufen wo ein anderes "Deinstprogramm" läuft ( wie nennt man sowas ;)

und deswegen wollen die alle Datenbank aufrüfe SELECT INTO UPDATE i neine Datei haben so dass sie nur die anpassen müssen.