03. juli 2007 - 13:31
Der er
19 kommentarer og 1 løsning
links, iframe osv
Hej eksperter, Jeg har en side med to iFrames. Den ene iFrame henter data fra mySQL via følgende script : <?php // Udfører SQL forespørgsel $query = "SELECT navn FROM heste"; $result = mysql_query($query) or die("Forespørgslen lykkedes ikke : " . mysql_error()); // Printer resultatet i HTML echo "<table>"; while ($line = mysql_fetch_array($result)) { $navn = $line['navn']; echo "<tr>"; echo "<td>"; echo $navn; echo "</td>"; echo "</tr>";} echo "</table>"; // Befri resultatet fra hukommelseN mysql_free_result($result); // Luk forbindelsen mysql_close($link); ?> Når man klikker på et af de navne der kommer frem i listen skal det være et link der viser indholdet i den anden iframe. Hvordan gøres det? Listen i Ifarme skal altså hele tiden være der.. Men indholdet i den anden iframe skifter alt efter hvilket navn man trykker på...
Annonceindlæg fra Computerworld
Hvis vi siger iframe 1 er det med dine links, så skal du give et navn på iframe2 F.eks.: <iframe name="iframe2" src="startside.php" /> Når du så laver links i iframe1, skal det være i stil med: <a href="noget.php" target="iframe2">Noget</a> <a href="andet.php" target="iframe2">Andet</a> osv.
hvordan linker jeg: echo $navn; har skrevet: echo "<a href=\"?link=$line[navn]\">"$navn"</a>" men får: unexpected T_VARIABLE,
Jeg ville nok trække id og navn ud fra tabellen heste. Og så lave et link ala: echo '<a href="hest.php?id='.$line['id'].' target="iframe1">'.$line['navn'].'</a>'; Og så laver du en fil der hedder hest.php som så trækker data ud fra id = NOGET. Det tager vi når dine links virker tror jeg! :o)
okay - er nået så langt: ----------------------------------------------------------- <td height="100" align="left" valign="top"> <iframe name="iframe1" src="pages/f_list.php" class="iframe" width="150" height="270"></iframe> </td> <td width="2" height="280" bgcolor="#000000"> </td> <td height="100" colspan="2" align="left" valign="top"> <iframe name="iframe2" src="pages/f_indhold.php" class="iframe" width="150" height="270"></iframe> </td> ----------------------------------------------------------- iframe1 // Udfører SQL forespørgsel $query = "SELECT navn FROM heste"; $result = mysql_query($query) or die("Forespørgslen lykkedes ikke : " . mysql_error()); // Printer resultatet i HTML echo "<table>"; while ($line = mysql_fetch_array($result)) { $navn = $line['navn']; echo "<tr>"; echo "<td>"; echo '<a href="hest.php?id='.$line['id'].' target="iframe2">'.$line['navn'].'</a>'; echo "</td>"; echo "</tr>";} echo "</table>"; // Befri resultatet fra hukommelseN mysql_free_result($result); // Luk forbindelsen mysql_close($link); ------------------------------------------ iframe2 // Udfører SQL forespørgsel $query = "SELECT navn FROM heste"; $result = mysql_query($query) or die("Forespørgslen lykkedes ikke : " . mysql_error()); // Printer resultatet i HTML echo "<table>"; while ($line = mysql_fetch_array($result)) { $navn = $line['navn']; echo "<tr>"; echo "<td>"; echo $id; echo "</td>"; echo "</tr>";} echo "</table>"; // Befri resultatet fra hukommelseN mysql_free_result($result); // Luk forbindelsen mysql_close($link);
Kan du få iframe2 til at skifte alt efter hvad du klikker i iframe1?
hey.. nej de skifter ikke.. det er nøjagtig som det eksempel du satte op.. kan dog ikke lige integrere koden du har skrevet.. skal jo hive ned fra en db osv.. kan du hjælpe med det?
Kan du ikke smide et dump af din tabel heste ? Så jeg kan se hvilke felter du har.
jov da -- Struktur-dump for tabellen `heste` -- CREATE TABLE `heste` ( `horseid` int(4) NOT NULL auto_increment, `kategori` int(1) NOT NULL default '0', `navn` varchar(20) NOT NULL default '', `far` varchar(20) NOT NULL default '', `mor` varchar(20) NOT NULL default '', `praimie` int(10) NOT NULL default '0', `pris` int(10) NOT NULL default '0', `alder` int(2) NOT NULL default '0', `tekst` text NOT NULL, `billeder` varchar(128) NOT NULL default '', `stamtrae` varchar(128) NOT NULL default '', PRIMARY KEY (`horseid`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=82 ; -- -- Data dump for tabellen `heste` --
06. juli 2007 - 13:22
#10
Prøv denne: <?php //Husk at forbind til MYSQL switch($_GET['frame']) { case 1: echo '<h1>iFrame1</h1>'; $query = "SELECT horseid,navn FROM heste"; $result = mysql_query($query) or die("Forespørgslen lykkedes ikke : " . mysql_error()); if(mysql_num_rows($result)>0) { echo '<ul>'; while($data = mysql_fetch_assoc($result)) { echo '<li><a href="?frame=2&id=' . $data['horseid'] . '" target="iframe2">'.$data['navn'].'</a></li>'; } echo '</ul>'; } break; case 2: echo '<h1>iFrame2</h1>'; if(isset($_GET['id']) && is_numeric($_GET['id'])) { $id = intval($_GET['id']); $query = "SELECT * FROM heste WHERE horseid = '".$id."' LIMIT 1"; $result = mysql_query($query) or die("Forespørgslen lykkedes ikke : " . mysql_error()); if(mysql_num_rows($result)==1) { $data = mysql_fetch_assoc($result); echo '<pre>'; print_r($data); echo '</pre>'; } } break; default: echo '<table>'; echo '<tr><td>'; echo '<iframe name="iframe1" src="?frame=1" width="200" height="200">[Din browser underst?tter ikke iframes.]</iframe>'; echo '</td></tr>'; echo '<tr><td>'; echo '<iframe name="iframe2" src="?frame=2" width="200" height="200">[Din browser underst?tter ikke iframes.]</iframe>'; echo '</td></tr>'; echo '</table>'; echo '<hr />'; break; } ?>
06. juli 2007 - 13:51
#11
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' den her linie: echo '<li><a href="?frame=2&id=' . $data['horseid'] . " target="iframe2">'.$data['navn'].'</a></li>';
06. juli 2007 - 14:03
#12
Det skal rettes til: echo '<li><a href="?frame=2&id=' . $data['horseid'] . '" target="iframe2">'.$data['navn'].'</a></li>';
06. juli 2007 - 14:10
#13
stadig samme problem.. Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in
06. juli 2007 - 14:54
#14
Den ændrede ikke det jeg ville. Linien skal være: echo '<li><a href="?frame=2&id=' . $data['horseid'] . '" target="iframe2">'.$data['navn'].'</a></li>';
06. juli 2007 - 14:55
#15
Det er eksperten der spiser mit ' Der skal placeres en ' lige efter: . $data['horseid'] . og før "
06. juli 2007 - 15:11
#16
kan ikke få det til at passe... gider du maile det til mail@katrinekieldsen.com mangler der ikke også et " ?
06. juli 2007 - 15:50
#17
Koden blev sendt via email, og så virkede det. Eksperten har åbenbart problemer med ' efterfulgt af " Tester lige: <START>'"<SLUT>
06. juli 2007 - 15:50
#18
Og så virker det selvfølgelig! :o( Du får et svar.
09. juli 2007 - 12:04
#19
tak for hjælpen :D
09. juli 2007 - 13:11
#20
Takker for point.
Vi tilbyder markedets bedste kurser inden for webudvikling