Avatar billede kwanstudios Nybegynder
26. juni 2003 - 23:39 Der er 21 kommentarer og
1 løsning

Administration af menu

Nu har jeg aldrig været den store mester i PHP, så forklar venligst forståeligt :0)

Jeg har en horisontal menu med følgende struktur: Punkt | Punkt | Punkt | Punkt

Den ønsker jeg at administrere med PHP via MySQL.. jeg har dog svært at se hvordan man kan få den til at lade være med at lave en | efter det sidste punkt når det skal vises?

Er der en af jer der hurtigt kan give et eksempel på dette?
Avatar billede skovenborg Nybegynder
26. juni 2003 - 23:42 #1
Det kan man sagtens, men kunne du ikke give noget kode vi kan gå ud fra ?-)
Avatar billede ahv Nybegynder
26. juni 2003 - 23:42 #2
En ide, laver et eksempel senere ->

1. Tæl antal der skal trækkes ud.
2. Ved hvert gannem løb lægger du en til, når du når nummert skal den ikke have nogen strg?
Avatar billede kwanstudios Nybegynder
26. juni 2003 - 23:43 #3
Det behøves da ikke? I skal bare give mig et eksempel på et MySQL udtræk med PHP hvor den lister indholdet som jeg forklarede? :)
Avatar billede kwanstudios Nybegynder
26. juni 2003 - 23:44 #4
Ser frem til eksempler :)
Avatar billede exp Juniormester
26. juni 2003 - 23:44 #5
skulle faktisk til at foreslå det samme som ahv, efter at have læs spm, men han var sgu (as usual) hurtigere :-)
Avatar billede skovenborg Nybegynder
26. juni 2003 - 23:45 #6
eller hvis du bruger mysql_fetch_array() sammen med fx en for løkke:
for ($i=0;$i<sizeof($mysql_array);$i++)
{
  //...
  if ($i<sizeof($mysql_array)-1) echo "|";
}
altså noget i den stil
Avatar billede detox Nybegynder
26. juni 2003 - 23:46 #7
Fx:
if($Page < $numPages) {
        $side = $_SERVER['PHP_SELF'];
        $nav .= " <a href='$side?page=" . ($Page+1) . "'>Next &gt;&gt;</a>";
        }
        else {
      // Strip the trailing pipe if there is one
      $nav = str_replace("|", "", $nav);
        }
Avatar billede detox Nybegynder
26. juni 2003 - 23:47 #8
Altså if / else
Avatar billede ahv Nybegynder
26. juni 2003 - 23:58 #9
Jeg er sikkert for træt til at se den lorte fejl jeg laver, kan ikke få den count til at virke sammen med det andet udtræk så den fik en for sig selv, men det her burde illustrer min ide ->

<table>
<tr>
<?php
$conn = mysql_connect("host","user","pass") or die(mysql_error());
mysql_select_db("db") or die(mysql_error());
$i = 0;
$query = mysql_query("SELECT COUNT(*) as antal FROM test2") or die(mysql_error());
$rows = mysql_fetch_array($query);

$querys = mysql_query("SELECT id FROM test2") or die(mysql_error());
while ($row = mysql_fetch_array($querys)) {
    $i++;
    if ($i == $rows['antal']) {
        echo "<td>$row[id]</td>";
    } else {
        echo "<td style='border-right: 1px solid black; height: 20px;'>$row[id]</td>";
    }
}
?>
</tr>
</table>
Avatar billede kwanstudios Nybegynder
26. juni 2003 - 23:59 #10
..ville jo gerne have noget der virker?
Avatar billede ahv Nybegynder
26. juni 2003 - 23:59 #11
Den virker.
Avatar billede kwanstudios Nybegynder
27. juni 2003 - 00:00 #12
og eksemplet må gerne være med |, hvor dit er med noget border?
Avatar billede kwanstudios Nybegynder
27. juni 2003 - 00:00 #13
oh, synes bare du skrev at du ikke kunne få count til at virke?
Avatar billede ahv Nybegynder
27. juni 2003 - 00:01 #14
Derfor jeg satte den i et udtræk for sig selv, ehm det med stregerne kan du vel selv rette?
Avatar billede kwanstudios Nybegynder
27. juni 2003 - 00:01 #15
Jamen dvs. den der i din else skal ikke have en streg efter sig?
Avatar billede ahv Nybegynder
27. juni 2003 - 00:02 #16
Korrekt.
Avatar billede kwanstudios Nybegynder
27. juni 2003 - 00:05 #17
I mit tilfælde, åbentbart omvendt.. men det virker.. :)
Avatar billede ahv Nybegynder
27. juni 2003 - 00:05 #18
Sådan her kan vi lave den ->

$i = 0;
$query = mysql_query("SELECT id FROM test2") or die(mysql_error());
$antal = mysql_num_rows($query);
while ($row = mysql_fetch_array($query)) {
    $i++;
    if ($i == $antal) {
        echo " $row[id]";
    } else {
        echo " $row[id] |";
    }
}
Avatar billede ahv Nybegynder
27. juni 2003 - 00:06 #19
hehe jeg tåger vist, den i else skal have stregen på, se mit sidste eksempel, det er vist meget bedre.
Avatar billede detox Nybegynder
27. juni 2003 - 00:10 #20
Ellers kunne du bruge:
$antal = mysql_num_rows($query);
Avatar billede detox Nybegynder
27. juni 2003 - 00:11 #21
he he, lidt sent :o)
Avatar billede kwanstudios Nybegynder
27. juni 2003 - 00:19 #22
ahv.. jeg har lige rettet den.. det er stadig fint :)
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