19. september 2006 - 20:47
Der er
19 kommentarer og 1 løsning
switch case?
Hvorfor virker dette ikke: <?php switch($_GET['side']) { case $row_rs_Side['sidenavn']: include( $row_rs_Side['sideurl']); break; } ?> Er der nogen der kan hjælpe?
Annonceindlæg fra Hitachi
”Forskellighed gør os stærkere!”
Diversitet er ikke kun buzzwords og politisk korrekthed, men et spørgsmål om at alle føler sig godt tilpas og kan yde deres bedste.
31. januar 2025
19. september 2006 - 21:00
#1
Fordi det der kommer efter en case sandsynligvis skal være en konstant ... altså ikke noget variabelt. Men hvorfor gør du ikke bare sådan her? if ($_GET['side'] == $row_rs_Side['sidenavn']) include($row_rs_Side['sideurl']);
19. september 2006 - 21:13
#2
Jeg kan ikke få dit eksempel til at virke - går jeg noget forkert ved min menu? <?php echo "<a href=?side=".$row_rs_Side['sidenavn']; echo " class=\"menusub\">"; echo $row_rs_Side['menunavn']; echo "</a><br>"; ?>
19. september 2006 - 21:20
#3
Kan godt få dette til at virke if ($_GET['side'] == "forside") include("forside.php"); Men ikke med database-henvisninger?
19. september 2006 - 21:21
#4
Min kode gør det som du forsøgte med din switch-case. For at jeg kan forstå hvad det er du forsøger at lave, bliver du nok nødt til at give noget mere forklaring samt noget mere kode.
19. september 2006 - 22:58
#5
En case kan godt være variabel... Lad os lige se hele din kode; du må gøre et eller andet forkert ;)
19. september 2006 - 22:58
#6
Og som nielle skriver, må du godt forklare hvad du vil opnå ;)
20. september 2006 - 08:01
#7
Der er egentlig ikke så meget at forklare og jeg har postet alt kode p.t. - Når man vælger et menupunkt skal en side includeres på index-siden: Menuen: <?php echo "<a href=?side=".$row_rs_Side['sidenavn']; echo " class=\"menusub\">"; echo $row_rs_Side['menunavn']; echo "</a><br>"; ?> Include: <?php switch($_GET['side']) { case $row_rs_Side['sidenavn']: include( $row_rs_Side['sideurl']); break; default: include("forside.php"); break; } ?> jeg plejer at gøre sådan og det virker fint - dog har jeg ikke prøvet med database-poster.
20. september 2006 - 12:05
#8
Hvor kommer $row_rs_Side['sidenavn'], $row_rs_Side['menunavn'] og $row_rs_Side['sideurl'] fra? Der er ingen databasekald ;P
20. september 2006 - 13:25
#9
Jo selvfølgelig er der det - troede det var en selvfølge ;o) Start: <?php require_once('Connections/test.php'); ?> <?php mysql_select_db($database_test, $test); $query_rs_Side = "SELECT * FROM sideindhold"; $rs_Side = mysql_query($query_rs_Side, $test) or die(mysql_error()); $row_rs_Side = mysql_fetch_assoc($rs_Side); $totalRows_rs_Side = mysql_num_rows($rs_Side); ?> Til slut: <?php mysql_free_result($rs_Side); ?>
20. september 2006 - 13:27
#10
Men der plejer ikke at være problemer med det - tror bestemt det er includen der er noget galt med??
20. september 2006 - 13:32
#11
Prøv lige at lave en var_dump( $row_rs_Side );
20. september 2006 - 13:51
#12
Hvor skal den sættes ind?
20. september 2006 - 13:58
#13
Har den erstattet include med var_dump( $row_rs_Side ); Skriver bool(false) ud ??
20. september 2006 - 14:23
#14
Hvis jeg derimod skriver det oppe i menuen får jeg alt frem <?php echo "<a href=?side=".$row_rs_Side['sidenavn']; echo " class=\"menusub\">"; echo $row_rs_Side['menunavn']; echo "</a><br>"; var_dump( $row_rs_Side ); ?> længere nede....under en anden <td> og <table> ligger så nclude: <?php switch($_GET['side']) { case $row_rs_Side['sidenavn']: include( $row_rs_Side['sideurl']); break; default: include("forside.php"); break; } ?> Måske er der problemer fordi jeg har det i 2 adskilte php-sektioner?
20. september 2006 - 15:02
#15
Ok jeg har vist ikke postet al koden - troede ikke det havde nogen indflydelse: <?php do { ?> <td> <?php echo "<a href=?side=".$row_rs_Side['sidenavn']; echo " class=\"menusub\">"; echo $row_rs_Side['menunavn']; echo "</a><br>"; ?> </td> <td class="normaltxt"> | </td> <?php } while ($row_rs_Side = mysql_fetch_assoc($rs_Side)); ?> Da jeg fjernede do while - blev den første side includet - men menu bliver så ikke gentaget - hvordan kan jeg gøre det?
20. september 2006 - 15:11
#16
<?php while ($row_rs_Side = mysql_fetch_assoc($rs_Side)) { ?> <td> <?php echo "<a href=?side=".$row_rs_Side['sidenavn']; echo " class=\"menusub\">"; echo $row_rs_Side['menunavn']; echo "</a><br>"; ?> </td> <td class="normaltxt"> | </td> <?php } ?>
20. september 2006 - 15:19
#17
Du bruger ikke frames eller sådan noget? Siden $row_rs_Side ikke er sat? Hvordan hænger dine filer og sider præcist sammen?
20. september 2006 - 15:36
#18
Jeg bruger ikke frames - Hvis jeg skriver sådan virker det fint - så bliver siden inkluderet lige under menupunktet i samme td...jeg forstår det ikke rigtigt. <?php do { ?> <td> <?php echo "<a href=?side=".$row_rs_Side['sidenavn']; echo " class=\"menusub\">"; echo $row_rs_Side['menunavn']; echo "</a><br>"; if ($_GET['side'] == $row_rs_Side['sidenavn']) include ($row_rs_Side['sideurl']);?> </td> <td class="normaltxt"> | </td> <?php } while ($row_rs_Side = mysql_fetch_assoc($rs_Side)); ?>
20. september 2006 - 16:29
#19
Jeg har endelig fået det til at virke - satte en ekstra connection ind med flg. rettelse $query_rs_Side = "SELECT * FROM sideindhold WHERE sidenavn = '".$_GET['side']."';" ; og det hjalp en hel del. Hvis du smider et svar siger jeg mange tak for tålmodigheden :o)
20. september 2006 - 17:01
#20
heheh ok :-D
Vi tilbyder markedets bedste kurser inden for webudvikling