Avatar billede likeaprayer Nybegynder
06. december 2005 - 17:12 Der er 5 kommentarer og
1 løsning

mere overskuelig mysql query. (insert)

hej jeg ville hører om der ikke er en mere overskuelig måde at insert i en mysql db.

bruger mysql_query("insert into mads ('field1') values ('yep')");

problemmet er når jeg har måske 20 felter .. så bliver min query alt for uoverskuelig..

er der ikke en måde man kan gøre hvor mange kan sige f.eks

$sql_query['field1'] = "yep";

uden at man senere skal tilføje dem alle i en lang linie ?
Avatar billede dennism Nybegynder
06. december 2005 - 17:14 #1
Tænker du på dette:
mysql_query("insert into mads ('field1',''field2') values ('yep','no')");

Hvis ikke dette er en løsning du kan bruge, kan det nok ikke lade sig gøre - mig bekendt er der kun den ene syntaks for insert.
Avatar billede michael_stim Ekspert
06. december 2005 - 17:24 #2
I MySQL kan man vel også bruge "update"-syntax.
INSERT INTO tabel SET felt=$felt1, felt2...osv
Avatar billede dennism Nybegynder
06. december 2005 - 17:30 #3
Det troede jeg ikke man kunne, men har lige tester efter. Fakta: Det kan man godt ;)
Avatar billede michael_stim Ekspert
06. december 2005 - 17:32 #4
Det er også kun MySQL man kan gøre det i. Det er ikke nogen SQL-standard.
Avatar billede ajenbo Nybegynder
06. december 2005 - 17:34 #5
Du kunde lave en funktion der sammled dem op, og så sende dem når du er færdig med det.

function sammel($field,$data,$query) {
if($query)
  $query[1] += ",'".$field".'";
  $query[2] += ",'".$data".'";
else
  $query[1] += "'".$field".'";
  $query[2] += "'".$data".'";
return($query);
}

//du bruger den sådan
sammel('field1','yes',$query);
sammel('field2','no',$query);

//når du så er færdig med at smale sender du
mysql_query("INSERT INTO mads (".$query[1].") VALUES (".$query[2].")");

//det er hvel faktisk det du vile have :)
Avatar billede ajenbo Nybegynder
06. december 2005 - 18:08 #6
ups, lille fejl.
$query = sammel('field2','no',$query);

du skulde moske også sikre dig at det field der bliver sent ikke er tomt.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester