Avatar billede thb Nybegynder
21. marts 2004 - 19:46 Der er 5 kommentarer og
1 løsning

hjælp til class fil

Hey alle

Jeg er ved at lave en class som skal generere en masse html for mig..

jeg vil godt kunne skrive classnavn::funktionsnavn("link.php?id=$id");

og når det så bliver kørt så skal den udskrive list med alle mine links fra en mysql db, hvor hvert link får et link der hedder link.php?id= og så deres id i databasen..

Jeg tror at jeg skal bruge funktionen eval() men ved ikke lige hvordan..

Håber at I forstod mit problem og at I kan hjælpe :)

Thomas
Avatar billede dennismp Nybegynder
21. marts 2004 - 19:54 #1
lidt pseudo

class myclass {
  function doStuff($format) {
    $res = mysql_query(..);
    while($row = mysql_fetch_row()) {
      $id = $row[?]; // fx 42
      eval('$link = "' . $format . '";');  // Nu indeholder $link "link.php?id=42"
    }
  }
}

Er ikke testet, osv :-)
Avatar billede thb Nybegynder
21. marts 2004 - 19:56 #2
okay... :)
Det vil jeg lige prøve..

Thomas
Avatar billede dennismp Nybegynder
21. marts 2004 - 20:03 #3
Alternativt kunne du også bruger str_replace:

$res = mysql_query(..);
$keys = null;
while($row = mysql_fetch_row()) {
  if( $keys == null )
    $keys = array_keys($row);
  $link = $format;
  foreach($keys as $k)  // findn alle felter i databasen, søg efter $feltnavn og erstat med værdien.
    $link = str_replace('$' . $k, $row[$k], $link);
  //$link er klar til brug
}

er heller ikke testet
Avatar billede dennismp Nybegynder
21. marts 2004 - 20:06 #4
Alternativet - kan laves lidt mere elegant. Men lad mig lige høre om det overhovedet virker :)
Avatar billede thb Nybegynder
01. april 2004 - 13:54 #5
Kan du ikke ligge et svar..
Ellers så lukker jeg.. :)

Thomas
Avatar billede dennismp Nybegynder
01. april 2004 - 15:31 #6
ok
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