Avatar billede compac Seniormester
19. august 2009 - 22:16 Der er 5 kommentarer og
1 løsning

Udtræk fra database

Jeg har en formular, hvor jeg kan udtrække data fra databasen via radio-buttons:

$tur = mysql_query ("SELECT * FROM $vandreture");
if(mysql_num_rows($tur) > 0) {
          while($a = mysql_fetch_object($tur)) {
              $turid = $a -> id;
              $turd =  $a -> dato;
              $maal =  $a -> titel;
              list($year, $month, $day) = split('[-.]', $turd);
              $turdate = "$day-$month-$year";
                         
             
echo "<input onclick='this.form.submit();' type='radio' name='gpstur' value='$turid'>";

Jeg kunne tænke mig at få dette ændret, så udtrækket skete ved at aktivere selve teksten ($maal). Der kan imidlertid forekomme flere $maal med samme værdi.

Hvordan skal jeg bære mig ad?
Avatar billede foo85 Novice
20. august 2009 - 00:17 #1
jeg tror liige jeg skal have det skåret lidt mere ud i pap - det giver ikke så meget mening...
Avatar billede compac Seniormester
20. august 2009 - 17:04 #2
Som det er nu klikker man i en radio-knap for at få en record frem:
echo "<input onclick='this.form.submit();' type='radio' name='gpstur' value='$turid'>";
Den indeholder bl.a en dato, og en titel. Feltet titel indeholder en tekst , som bliver gengivet sammen med radioknappen:
(beklager det kom ikke med i det første eksempel)
echo "    <form action="ture.php" method="GET">";
$tur = mysql_query ("SELECT * FROM $vandreture");
if(mysql_num_rows($tur) > 0) {
          while($a = mysql_fetch_object($tur)) {
              $turid = $a -> id;
              $turd =  $a -> dato;
              $maal =  $a -> titel;
              list($year, $month, $day) = split('[-.]', $turd);
              $turdate = "$day-$month-$year";
                         
echo "<input onclick='this.form.submit();' type='radio' name='gpstur' value='$turid'>";
echo "<br />";
echo "$turdate";
echo "<br />";
echo "$maal";

}
}

---på næste side ture.php gengives inholdet af den valgte record (et billede):

$idtur = $_GET[gpstur];
$sql = "select * from $vandreture where id = '$idtur'";
$result=mysql_query($sql) or die(mysql_error());

while($row=mysql_fetch_array($result)){
    $trippic = $row[picture];
    }
?>
echo $trippic;

--Jeg vil gerne af med radioknappen, så man blot skal klikke direkte på titlen for at komme videre til næstet side, hvor billedet gengives.
Avatar billede foo85 Novice
20. august 2009 - 17:11 #3
ahh... så giver det mening... :)

Det er slet ikke så slemt at lave om...

Du skal have erstatet din form med et link - jeg kan se i din form at du vil videre til ture.php, og at du læser variablen gpstur fra querystringen. Du skal så bare have lavet et link

echo "<a href=\"ture.php?gpstur=" . $turid . "\">" . $maal . "</a>";

Du skal så fjerne din <form> og </form> og linjen herover skal erstatte den echo du har i din while som det er nu... Regner med du selv kan ordne formatteringen? :)
Avatar billede compac Seniormester
23. august 2009 - 14:15 #4
takker - - læg et svar
Avatar billede foo85 Novice
23. august 2009 - 19:46 #5
så lidt da :)
Avatar billede foo85 Novice
23. august 2009 - 19:46 #6
og svaret kommer så her... min fejl :)
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