Avatar billede Slettet bruger
11. marts 2011 - 20:33 Der er 25 kommentarer og
1 løsning

Vis kategori

Jeg har 2 elementer jeg gerne vil ha kombineret - hver for sig :)

I kogebogen har jeg en række kategorier med opskrifter i, når man klikker på kategorierne vises opskrifterne i den kategori. Der kunne jeg godt tænke mig at opskrifterne blev vist i 4 kolonner, i stedet for bare en lang kolonne.
http://anakin.dk/opskrifter

I links har jeg de 4 kolonner, men mangler den funktion der gør kategorierne til links man kan klikke på, og så vises alle links i den kategori i 4 kolonner.
http://anakin.dk/links

(Hvordan får man den blå kasse rundt om koder?)
Avatar billede majbom Novice
11. marts 2011 - 21:12 #1
du har da 2 kolonner med dine kategorier nu.

er det ikke bare en variabel der skal ændres fra 2 til 4, eller noget?

det er jo svært at sige uden én eneste linje kode...
Avatar billede Slettet bruger
11. marts 2011 - 21:26 #2
Opskrifterne er desværre lagt ind i tabeller, så jeg gruer at det skal skrives ret meget om. Men jeg kunne godt tænke mig at få dem ud i 4 kolonner også, og kategorierne som links der også vises i 4 kolonner.

[code]
<?php
  $page_title         = "Opskrifter";
  $stylesheet        = "style";
  $bg                = "index";
  $graphics            = "opskrifter";
  $menu                = "opskrifter";
  $menu2            = "";
  $fotoalbum        = "";
  include($DOCUMENT_ROOT.'/php/start.php');
?>
  <table width="100%" border="0">
    <tr>
      <td colspan="2" class="justify">
<?php
if ($mode == "catview") {
$kategorier = mysql_query("SELECT kat_billede,kat_beskrivelse FROM kogebog_kategorier WHERE id = '$catid'");
$kategori = mysql_fetch_array($kategorier);
@extract($kategori);

/*
if ($kat_billede == 1) {
  echo "<img src='/billeder/opskrifter/kat-$catid.jpg' width='200' height='200' border='1' alt='Kategori'>";
}
} else {
echo "<img src='/images/opskrifter/kat-mangler.jpg' width='200' height='200' border='1' alt='Kategori'>";
*/
}

if ($mode == "catview") {
echo nl2br($kat_beskrivelse);
} // else {
?>
    </td>
  </tr>
</table>
<table width="100%" border="0">
  <tr>
    <td width="5">&nbsp;</td>
    <td>
<?php
echo "<table width='100%' border='0' align='right'>"; //starter stor tabel
if ($mode == "catview") {

if ($catid == "check1") {
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check1='ja' AND godkendt = '1' ORDER BY overskrift ASC");
}

if ($catid == "check2"){
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check2='ja' AND godkendt = '1' ORDER BY overskrift ASC");
}

$talcheck = is_numeric($catid);
if ($talcheck){
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$catid' AND godkendt = '1' ORDER BY overskrift ASC"); //Henter alle opskrifterne i den kategori som løkken kører
}

while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken
} else { //starter alm. oversigt

echo "<tr><td valign='top' width='50%'>";
echo "<table width='100%' border='0'>"; //starter tabellen
$kategorier = mysql_query("SELECT * FROM kogebog_kategorier ORDER BY kategori ASC LIMIT 0,5"); //finder alle kategorier
while ($kategori = mysql_fetch_array($kategorier)) { // starter kategori løkken
extract($kategori); // laver rækken om til variabler

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id' AND godkendt = '1'");
$antalopskrifter = mysql_num_rows($antalopskrifter);

echo "<tr><td><b><a href=\"$PHP_SELF?mode=catview&catid=$id\">$kategori</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn

$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id' AND godkendt = '1' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td>&nbsp;</td></tr>";
}//lukker kategori løkken

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check1='ja'");
$antalopskrifter = mysql_num_rows($antalopskrifter);

// echo "<tr><td><b><a href=\"spec_oversigt.php?mode=catview&catid=check1\">Franks opskrifter</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn

$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check1='ja' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td>&nbsp;</td></tr>";
echo "</table>";//slutter tabellen
echo "</td><td valign='top' width='50%'>";
echo "<table width='100%' border='0'>"; //starter tabellen

$kategorier = mysql_query("SELECT * FROM kogebog_kategorier ORDER BY kategori ASC LIMIT 5,10"); //finder alle kategorier
while ($kategori = mysql_fetch_array($kategorier)) { // starter kategori løkken
extract($kategori); // laver rækken om til variabler

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id'");
$antalopskrifter = mysql_num_rows($antalopskrifter);
echo "<tr><td><b><a href=\"$PHP_SELF?mode=catview&catid=$id\">$kategori</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id' AND godkendt='1' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td>&nbsp;</td></tr>";
}//lukker kategori løkken

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check2='ja'");
$antalopskrifter = mysql_num_rows($antalopskrifter);

// echo "<tr><td><b><a href=\"spec_oversigt.php?mode=catview&catid=check2\">Pias opskrifter</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn

$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check2='ja' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td>&nbsp;</td></tr>";
echo "</table>";//slutter tabellen
}//slut med alm. oversigt

echo "</td></tr>";
echo "</table>";//slutter stor tabel
?>

    </td>
  </tr>
  <tr>
    <td colspan="2" align="right">
      <?php
        $antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE godkendt=1");
        $antalopskrifter = mysql_num_rows($antalopskrifter);
        echo "Opskrifter i alt: <b>$antalopskrifter</b>";
      ?>
    </td>
  </tr>
</table>

<?php include($_SERVER["DOCUMENT_ROOT"].'/php/end.php'); ?>
[/code]


I links er kolonnerne defineret med variabel 4, men her mangler link i kategorierne og hvor linkene vises på samme måde, i 4 kolonner.

[code]
<?php
  $page_title        = "Links";
  $stylesheet        = "style";
  $bg                = "index";
  $graphics            = "links";
  $menu                = "links";
  $menu2            = "";
  $fotoalbum        = "";
  include($DOCUMENT_ROOT.'/php/start.php');

  require($_SERVER["DOCUMENT_ROOT"].'/php/links_boot.php');
  include($_SERVER["DOCUMENT_ROOT"].'/php/links_functions.php');

$thisfile = $PHP_SELF;
if (strtolower($show) == "all") {
  $where = "";
} else {
  $where = " having point >= 0";
}

$count = query("select sum(hits) as cnt from links");
$hitcount = $count[0]->cnt;

$result = query("select id,speciel,title,date,rating,hits,url,(hits*rating) as point ".
                "from links$where order by point DESC");

page_start("");
if ($_GET['addurl'] != "yes" && $_GET['show'] == "all" || !$_GET['show']) {
echo '<table style="margin: auto; width: 100%;"><tr>';
       
$number = 0;
           
$query = mysql_query("SELECT * FROM links_kat WHERE speciel='0' ORDER BY kategori ASC") or die(mysql_error());
while ($data = mysql_fetch_array($query)) {
                   
$id = $data['id'];
$kategori = $data['kategori'];
$number++;
                       
$query2 = mysql_query("SELECT id, title, url FROM links WHERE kat_id = '$id' ORDER BY hits DESC") or die(mysql_error()); // Viser alle links i kat.
$query3 = mysql_query("SELECT id FROM links WHERE kat_id = '$id'") or die(mysql_error());

$count = mysql_num_rows($query3);
               
echo '<td style="width: 25%; vertical-align: top"><strong>' . $kategori . '</strong> (' . $count . ')<br />';
                                                                while ($data2 = mysql_fetch_array($query2)) {
                       
  $title = $data2['title'];
  $url = $data2['url'];
                       
  echo '&nbsp; &#8226; <a href="' . $url . '" target="_blank" title="' . $url . '">' . stripslashes($title) . '</a><br />';

}
                       
echo '</td>';
                       
if ($number != 0) {
                       
if (($number % 4) == 0) {
                   
echo "</tr>\n\n";
echo "<tr>\n";
                           
}
                           
}
                           
}
           
echo '</tr></table>';
}

$antallinks = mysql_query("SELECT * FROM links WHERE speciel=0");
$antallinks = mysql_num_rows($antallinks);

echo "Links: <strong>$antallinks</strong>";
echo mysql_error();

page_end();

include($DOCUMENT_ROOT.'/php/end.php');

?>[/code]
Avatar billede Slettet bruger
11. marts 2011 - 21:28 #3
hmm, så [ code ] virker ikke.. hvordan får man så de blå bokse til koderne til at virke.
Avatar billede majbom Novice
11. marts 2011 - 21:34 #4
div og pre
Avatar billede Slettet bruger
11. marts 2011 - 21:48 #5
Det var da ulæseligt det der..

Opskrifterne er desværre lagt ind i tabeller, så jeg gruer at det skal skrives ret meget om. Men jeg kunne godt tænke mig at få dem ud i 4 kolonner også, og kategorierne som links der også vises i 4 kolonner.


<?php
  $page_title         = "Opskrifter";
  $stylesheet        = "style";
  $bg                = "index";
  $graphics            = "opskrifter";
  $menu                = "opskrifter";
  $menu2            = "";
  $fotoalbum        = "";
  include($DOCUMENT_ROOT.'/php/start.php');
?>
  <table width="100%" border="0">
    <tr>
      <td colspan="2" class="justify">
<?php
if ($mode == "catview") {
$kategorier = mysql_query("SELECT kat_billede,kat_beskrivelse FROM kogebog_kategorier WHERE id = '$catid'");
$kategori = mysql_fetch_array($kategorier);
@extract($kategori);

/*
if ($kat_billede == 1) {
  echo "<img src='/billeder/opskrifter/kat-$catid.jpg' width='200' height='200' border='1' alt='Kategori'>";
}
} else {
echo "<img src='/images/opskrifter/kat-mangler.jpg' width='200' height='200' border='1' alt='Kategori'>";
*/
}

if ($mode == "catview") {
echo nl2br($kat_beskrivelse);
} // else {
?>
    </td>
  </tr>
</table>
<table width="100%" border="0">
  <tr>
    <td width="5"> </td>
    <td>
<?php
echo "<table width='100%' border='0' align='right'>"; //starter stor tabel
if ($mode == "catview") {

if ($catid == "check1") {
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check1='ja' AND godkendt = '1' ORDER BY overskrift ASC");
}

if ($catid == "check2"){
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check2='ja' AND godkendt = '1' ORDER BY overskrift ASC");
}

$talcheck = is_numeric($catid);
if ($talcheck){
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$catid' AND godkendt = '1' ORDER BY overskrift ASC"); //Henter alle opskrifterne i den kategori som løkken kører
}

while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>  › <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken
} else { //starter alm. oversigt

echo "<tr><td valign='top' width='50%'>";
echo "<table width='100%' border='0'>"; //starter tabellen
$kategorier = mysql_query("SELECT * FROM kogebog_kategorier ORDER BY kategori ASC LIMIT 0,5"); //finder alle kategorier
while ($kategori = mysql_fetch_array($kategorier)) { // starter kategori løkken
extract($kategori); // laver rækken om til variabler

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id' AND godkendt = '1'");
$antalopskrifter = mysql_num_rows($antalopskrifter);

echo "<tr><td><b><a href=\"$PHP_SELF?mode=catview&catid=$id\">$kategori</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn

$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id' AND godkendt = '1' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>  › <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td> </td></tr>";
}//lukker kategori løkken

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check1='ja'");
$antalopskrifter = mysql_num_rows($antalopskrifter);

// echo "<tr><td><b><a href=\"spec_oversigt.php?mode=catview&catid=check1\">Franks opskrifter</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn

$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check1='ja' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>  › <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td> </td></tr>";
echo "</table>";//slutter tabellen
echo "</td><td valign='top' width='50%'>";
echo "<table width='100%' border='0'>"; //starter tabellen

$kategorier = mysql_query("SELECT * FROM kogebog_kategorier ORDER BY kategori ASC LIMIT 5,10"); //finder alle kategorier
while ($kategori = mysql_fetch_array($kategorier)) { // starter kategori løkken
extract($kategori); // laver rækken om til variabler

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id'");
$antalopskrifter = mysql_num_rows($antalopskrifter);
echo "<tr><td><b><a href=\"$PHP_SELF?mode=catview&catid=$id\">$kategori</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id' AND godkendt='1' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>  › <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td> </td></tr>";
}//lukker kategori løkken

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check2='ja'");
$antalopskrifter = mysql_num_rows($antalopskrifter);

// echo "<tr><td><b><a href=\"spec_oversigt.php?mode=catview&catid=check2\">Pias opskrifter</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn

$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check2='ja' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>  › <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td> </td></tr>";
echo "</table>";//slutter tabellen
}//slut med alm. oversigt

echo "</td></tr>";
echo "</table>";//slutter stor tabel
?>

    </td>
  </tr>
  <tr>
    <td colspan="2" align="right">
      <?php
        $antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE godkendt=1");
        $antalopskrifter = mysql_num_rows($antalopskrifter);
        echo "Opskrifter i alt: <b>$antalopskrifter</b>";
      ?>
    </td>
  </tr>
</table>

<?php include($_SERVER["DOCUMENT_ROOT"].'/php/end.php'); ?>



I links er kolonnerne defineret med variabel 4, men her mangler link i kategorierne og hvor linkene vises på samme måde, i 4 kolonner.


<?php
  $page_title        = "Links";
  $stylesheet        = "style";
  $bg                = "index";
  $graphics            = "links";
  $menu                = "links";
  $menu2            = "";
  $fotoalbum        = "";
  include($DOCUMENT_ROOT.'/php/start.php');

  require($_SERVER["DOCUMENT_ROOT"].'/php/links_boot.php');
  include($_SERVER["DOCUMENT_ROOT"].'/php/links_functions.php');

$thisfile = $PHP_SELF;
// linkstrenge til de tre funktioner.
//$linkshowtop = "<a href=\"$thisfile\">Top links</a>   ";
$linkshowall = "<a href=\"$thisfile?show=all\">Vis alle</a>   ";
$linkshowkat = "<a href=\"$thisfile?show=kat\">Kategorier</a>   ";
$linkadd = "<a href=\"addurl.php\">Tilføj link</a>";

if (strtolower($show) == "all") {
  $where = "";
} else {
  $where = " having point >= 0";
}

$count = query("select sum(hits) as cnt from links");
$hitcount = $count[0]->cnt;

//$result = query("select id,title,date,rating,hits,url,(hits*rating-(to_days(curdate())-to_days(date))) as point ".
$result = query("select id,speciel,title,date,rating,hits,url,(hits*rating) as point ".
                "from links$where order by point DESC");

page_start("");
//echo $linkshowtop;
//echo $linkshowall;
//echo $linkshowkat;
//echo $linkadd;
if ($_GET['addurl'] != "yes" && $_GET['show'] == "all" || !$_GET['show']) {
/*
echo "<table width='100%' border='0'>\n";
  for ($i=0;$i<sizeof($result);$i++) {
    if ($result[$i]->point >= 0) {
      $point = $result[$i]->point;
    } else {
      $point = "-";
    }
    echo "<tr><td><p title='".$result[$i]->url."'>".
        "<a href='golink.php?id=".$result[$i]->id."'target='_blank'>".
        stripslashes($result[$i]->title)."</a><a href='".$result[$i]->url."'>".
        "</a></td>".
        "<td><img src=\"/images/links/".$result[$i]->rating.".gif\" ".
        "alt='".stars($result[$i]->rating)."'width='33' height='9'></td>".
        "<td align=\"right\">".$result[$i]->hits."</td>";
    echo "<td align=\"right\">$point</td>";

    echo "</tr>\n";
  }

echo "</table>";
} else
if ($_GET['show'] == "kat") {
*/
echo '<table style="margin: auto; width: 100%;"><tr>';
       
$number = 0;
           
//$query = mysql_query("SELECT * FROM links_kat ORDER BY kategori ASC") or die(mysql_error());
$query = mysql_query("SELECT * FROM links_kat WHERE speciel='0' ORDER BY kategori ASC") or die(mysql_error());
while ($data = mysql_fetch_array($query)) {
                   
$id = $data['id'];
$kategori = $data['kategori'];
$number++;
                       
//$query2 = mysql_query("SELECT id, title, url FROM links WHERE kat_id = '$id' ORDER BY hits DESC LIMIT 5") or die(mysql_error()); // Viser 5 links pr. kat.
$query2 = mysql_query("SELECT id, title, url FROM links WHERE kat_id = '$id' ORDER BY hits DESC") or die(mysql_error()); // Viser alle links i kat.
$query3 = mysql_query("SELECT id FROM links WHERE kat_id = '$id'") or die(mysql_error());

$count = mysql_num_rows($query3);
               
echo '<td style="width: 25%; vertical-align: top"><strong>' . $kategori . '</strong> (' . $count . ')<br />';
                                                                while ($data2 = mysql_fetch_array($query2)) {
                       
  $title = $data2['title'];
  $url = $data2['url'];
                       
  echo '  • <a href="' . $url . '" target="_blank" title="' . $url . '">' . stripslashes($title) . '</a><br />';

}
                       
echo '</td>';
                       
if ($number != 0) {
                       
if (($number % 4) == 0) {
                   
echo "</tr>\n\n";
echo "<tr>\n";
                           
}
                           
}
                           
}
           
echo '</tr></table>';
}

$antallinks = mysql_query("SELECT * FROM links WHERE speciel=0");
$antallinks = mysql_num_rows($antallinks);

echo "Links: <strong>$antallinks</strong>";
//echo "Links: <strong>$antallinks</strong>   Klik: <strong>$hitcount</strong>";
echo mysql_error();

page_end();

include($DOCUMENT_ROOT.'/php/end.php');

?>
Avatar billede Slettet bruger
11. marts 2011 - 21:50 #6
Der er et sted i koden til links hvor jeg kan beskære antal links der vises til f.eks. 5, det giver jo et bedre overblik. Og hvis man så kunne klikke på kategorierne og få vist resten af linkene på samme måde, vil det være helt perfekt.
Avatar billede majbom Novice
11. marts 2011 - 22:02 #7
er det her de skal vises i 4 kolonner?

http://anakin.dk/opskrifter/index.php?mode=catview&catid=1
Avatar billede Slettet bruger
11. marts 2011 - 22:11 #8
Ja, og i links (når man kan klikke på kategorierne)
Avatar billede majbom Novice
11. marts 2011 - 22:22 #9
og det skal stadig vises med op til 5 opskrifter under hver kategori i oversigten?

skal kolonnerne sorteres vandret eller lodret?
Avatar billede Slettet bruger
11. marts 2011 - 22:38 #10
ja, 5 i hver kategori og sorteres lodret.
Avatar billede majbom Novice
12. marts 2011 - 20:20 #11
kunne man så ikke tælle hvor mange kategorier der er, og derefter dividere det med 4, så har du antallet der skal i hver kolonne.

så laver du 4 divs eller en tabel med 4 kolonner og placerer summen/4 i hver.

giver det mening?
Avatar billede Slettet bruger
12. marts 2011 - 22:33 #12
Ja, det giver mening, men lige hvordan det ændres i den eksisterende fil eller om det kan/skal skrives om ved jeg ikke.
Avatar billede majbom Novice
13. marts 2011 - 09:18 #13
din kode ser meget rodet ud - du blander de to sider sammen (alle kategorier og valgt kategori) og reder det ud med en masse if/else (hvor nogle af dem oveni købet er kommenteret ud).

det bedste ville være at lave de 2 sider hver for sig, du kan evt. adskille det i en switch og stadig have det i samme fil (eller if/else, hvis du foretrækker det).
Avatar billede Slettet bruger
13. marts 2011 - 09:45 #14
Enig.

Hvis du siger at en switch er den bedste løsning, så er det det vi gør.

Links først i normal udgave.
(Så opretter jeg en ny tråd med opskrifterne senere)

<?php
  $page_title        = "Links";
  $stylesheet        = "style";
  $bg                = "index";
  $graphics            = "links";
  $menu                = "links";
  $menu2            = "";
  $fotoalbum        = "";
  include($DOCUMENT_ROOT.'/php/start.php');

  require($_SERVER["DOCUMENT_ROOT"].'/php/links_boot.php');
  include($_SERVER["DOCUMENT_ROOT"].'/php/links_functions.php');

$thisfile = $PHP_SELF;

if (strtolower($show) == "all") {
  $where = "";
} else {
  $where = " having point >= 0";
}

$count = query("select sum(hits) as cnt from links");
$hitcount = $count[0]->cnt;

$result = query("select id,speciel,title,date,rating,hits,url,(hits*rating) as point ".
                "from links$where order by point DESC");

page_start("");
if ($_GET['addurl'] != "yes" && $_GET['show'] == "all" || !$_GET['show']) {
echo '<table style="margin: auto; width: 100%;"><tr>';
       
$number = 0;
           
$query = mysql_query("SELECT * FROM links_kat WHERE speciel='0' ORDER BY kategori ASC") or die(mysql_error());
while ($data = mysql_fetch_array($query)) {
                   
$id = $data['id'];
$kategori = $data['kategori'];
$number++;
                       
$query2 = mysql_query("SELECT id, title, url FROM links WHERE kat_id = '$id' ORDER BY hits DESC") or die(mysql_error()); // Viser alle links i kat.
$query3 = mysql_query("SELECT id FROM links WHERE kat_id = '$id'") or die(mysql_error());

$count = mysql_num_rows($query3);
               
echo '<td style="width: 25%; vertical-align: top"><strong>' . $kategori . '</strong> (' . $count . ')<br />';
                                                                while ($data2 = mysql_fetch_array($query2)) {
                       
  $title = $data2['title'];
  $url = $data2['url'];
                       
  echo '&nbsp; &#8226; <a href="' . $url . '" target="_blank" title="' . $url . '">' . stripslashes($title) . '</a><br />';

}
                       
echo '</td>';
                       
if ($number != 0) {
                       
if (($number % 4) == 0) {
                   
echo "</tr>\n\n";
echo "<tr>\n";
                           
}
                           
}
                           
}
           
echo '</tr></table>';
}

$antallinks = mysql_query("SELECT * FROM links WHERE speciel=0");
$antallinks = mysql_num_rows($antallinks);

echo "Links: <strong>$antallinks</strong>";
echo mysql_error();

page_end();

include($DOCUMENT_ROOT.'/php/end.php');

?>
Avatar billede majbom Novice
13. marts 2011 - 10:04 #15
var det ikke kategorierne du skulle have lavet om?
Avatar billede Slettet bruger
13. marts 2011 - 10:11 #16
Min fejl, jeg troede du snakkede om links

Her er oversigten til opskrifterne.

<?php
  $page_title         = "Opskrifter";
  $stylesheet        = "style";
  $bg                = "index";
  $graphics            = "opskrifter";
  $menu                = "opskrifter";
  $menu2            = "";
  $fotoalbum        = "";
  include($DOCUMENT_ROOT.'/php/start.php');
?>
  <table width="100%" border="0">
    <tr>
      <td colspan="2" class="justify">
<?php
if ($mode == "catview") {
$kategorier = mysql_query("SELECT kat_billede,kat_beskrivelse FROM kogebog_kategorier WHERE id = '$catid'");
$kategori = mysql_fetch_array($kategorier);
@extract($kategori);

if ($kat_billede == 1) {
  echo "<img src='/billeder/opskrifter/kat-$catid.jpg' width='200' height='200' border='1' alt='Kategori'>";
}
} else {
echo "<img src='/images/opskrifter/kat-mangler.jpg' width='200' height='200' border='1' alt='Kategori'>";
}

if ($mode == "catview") {
echo nl2br($kat_beskrivelse);
} // else {
?>
    </td>
  </tr>
</table>
<table width="100%" border="0">
  <tr>
    <td width="5">&nbsp;</td>
    <td>
<?php
echo "<table width='100%' border='0' align='right'>"; //starter stor tabel
if ($mode == "catview") {

if ($catid == "check1") {
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check1='ja' AND godkendt = '1' ORDER BY overskrift ASC");
}

if ($catid == "check2"){
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check2='ja' AND godkendt = '1' ORDER BY overskrift ASC");
}

$talcheck = is_numeric($catid);
if ($talcheck){
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$catid' AND godkendt = '1' ORDER BY overskrift ASC"); //Henter alle opskrifterne i den kategori som løkken kører
}

while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken
} else { //starter alm. oversigt

echo "<tr><td valign='top' width='50%'>";
echo "<table width='100%' border='0'>"; //starter tabellen
$kategorier = mysql_query("SELECT * FROM kogebog_kategorier ORDER BY kategori ASC LIMIT 0,5"); //finder alle kategorier
while ($kategori = mysql_fetch_array($kategorier)) { // starter kategori løkken
extract($kategori); // laver rækken om til variabler

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id' AND godkendt = '1'");
$antalopskrifter = mysql_num_rows($antalopskrifter);

echo "<tr><td><b><a href=\"$PHP_SELF?mode=catview&catid=$id\">$kategori</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn

$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id' AND godkendt = '1' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td>&nbsp;</td></tr>";
}//lukker kategori løkken

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check1='ja'");
$antalopskrifter = mysql_num_rows($antalopskrifter);

$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check1='ja' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td>&nbsp;</td></tr>";
echo "</table>";//slutter tabellen
echo "</td><td valign='top' width='50%'>";
echo "<table width='100%' border='0'>"; //starter tabellen

$kategorier = mysql_query("SELECT * FROM kogebog_kategorier ORDER BY kategori ASC LIMIT 5,10"); //finder alle kategorier
while ($kategori = mysql_fetch_array($kategorier)) { // starter kategori løkken
extract($kategori); // laver rækken om til variabler

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id'");
$antalopskrifter = mysql_num_rows($antalopskrifter);
echo "<tr><td><b><a href=\"$PHP_SELF?mode=catview&catid=$id\">$kategori</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn
$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id' AND godkendt='1' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td>&nbsp;</td></tr>";
}//lukker kategori løkken

$antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check2='ja'");
$antalopskrifter = mysql_num_rows($antalopskrifter);

// echo "<tr><td><b><a href=\"spec_oversigt.php?mode=catview&catid=check2\">Pias opskrifter</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn

$opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check2='ja' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
extract($opskrift); // laver rækken om til variabler

// Tilpasning af længde på overskrift
if(strlen($overskrift) >= 40) {
$overskrift = substr($overskrift, 0, 38);
$overskrift .= "..";
}

echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
}//lukker opskrift løkken

echo "<tr><td>&nbsp;</td></tr>";
echo "</table>";//slutter tabellen
}//slut med alm. oversigt

echo "</td></tr>";
echo "</table>";//slutter stor tabel
?>

    </td>
  </tr>
  <tr>
    <td colspan="2" align="right">
      <?php
        $antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE godkendt=1");
        $antalopskrifter = mysql_num_rows($antalopskrifter);
        echo "Opskrifter i alt: <b>$antalopskrifter</b>";
      ?>
    </td>
  </tr>
</table>

<?php include($_SERVER["DOCUMENT_ROOT"].'/php/end.php'); ?>


De mange // er kommentarer jeg har beholdt, så jeg ikke glemmer det helt.
Avatar billede majbom Novice
13. marts 2011 - 10:24 #17
det var det jo den du postede i #5 - som jeg siger er blandet sammen.

du har både visnng af alle kategorierne (og de 3-5 opskrifter under) samt visning af alle opskrifter i den enkelte kategori.

hvis du nu laver en ny side, hvor du:

- henter dine kategorier
- finder antallet af kategorier = $antal
- laver en tabel med 4 kolonner
- dividerer $antal med 4 = $pr_col
- laver en for-løkke der kører 4 gange, som hver gang laver en <td> med en fjerdedel ($pr_col) af kategorierne og samtidig udskriver 3-5 opskrifter pr kategori
Avatar billede Slettet bruger
13. marts 2011 - 10:47 #18
Jeg kan sagtens forstå det du skriver at jeg bare skal gøre, men jeg aner ikke hvor det skal starte, hvor meget af den gamle kode jeg kan genbruge, hvilke afsnit der skal ændres/skiftes..

Det er nok et dødt projekt hvis ikke du eller en anden vil skrive det for mig, enten for point eller $
Avatar billede majbom Novice
13. marts 2011 - 21:07 #19
prøv at se om det her hjælper på det:


  <table width="100%" border="0">
    <tr>
      <td colspan="2" class="justify">
        <?php
        if ($mode == "catview") {
            $kategorier = mysql_query("SELECT kat_billede,kat_beskrivelse FROM kogebog_kategorier WHERE id = '$catid'");
            $kategori = mysql_fetch_array($kategorier);
            @extract($kategori);
           
            if ($kat_billede == 1) {
              echo "<img src='/billeder/opskrifter/kat-$catid.jpg' width='200' height='200' border='1' alt='Kategori'>";
            }
        } else {
            echo "<img src='/images/opskrifter/kat-mangler.jpg' width='200' height='200' border='1' alt='Kategori'>";
        }
       
        if ($mode == "catview") {
            echo nl2br($kat_beskrivelse);
        }
        ?>
    </td>
  </tr>
</table>
<table width="100%" border="0">
  <tr>
    <td width="5">&nbsp;</td>
    <td>
        <?php
        echo "<table width='100%' border='0' align='right'>"; //starter stor tabel
        if ($mode == "catview") {
            if ($catid == "check1") {
                $opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check1='ja' AND godkendt = '1' ORDER BY overskrift ASC");
            }
           
            if ($catid == "check2"){
                $opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE check2='ja' AND godkendt = '1' ORDER BY overskrift ASC");
            }
           
            $talcheck = is_numeric($catid);
            if ($talcheck){
                $opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$catid' AND godkendt = '1' ORDER BY overskrift ASC"); //Henter alle opskrifterne i den kategori som løkken kører
            }
           
            while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
                extract($opskrift); // laver rækken om til variabler
               
                // Tilpasning af længde på overskrift
                if(strlen($overskrift) >= 40) {
                    $overskrift = substr($overskrift, 0, 38);
                    $overskrift .= "..";
                }
               
                echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
            }//lukker opskrift løkken
           
    /*********
      START
    *********/       
           
   
        } else { //starter alm. oversigt
       
            echo "<tr><td valign='top' width='50%'>";
            echo "<table width='100%' border='0'><tr><td><table>"; //starter tabellen
            $kategorier = mysql_query("SELECT * FROM kogebog_kategorier ORDER BY kategori ASC"); //finder alle kategorier
            $antal_kategorier = mysql_num_rows($kategorier);
            $kolonner = 4;
            $kategorier_pr_kolonne = ceil($antal_kategorier / $kolonner);
            $aktiv_kolonne = 1;
            $i = 1;
            while ($kategori = mysql_fetch_array($kategorier)) { // starter kategori løkken
                if(($kategorier_pr_kolonne * $aktiv_kolonne) == $i){
                    echo "</table></td><td><table>";
                    $aktiv_kolonne++;
                }
                extract($kategori); // laver rækken om til variabler
               
                $antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id' AND godkendt = '1'");
                $antalopskrifter = mysql_num_rows($antalopskrifter);
               
                echo "<tr><td><b><a href=\"$PHP_SELF?mode=catview&catid=$id\">$kategori</a> ($antalopskrifter)</b></td></tr>"; //udskriver kategoriens navn
               
                $opskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE kategori_id = '$id' AND godkendt = '1' ORDER BY opskriftid DESC LIMIT 3"); //Henter alle opskrifterne i den kategori som løkken kører
                while ($opskrift = mysql_fetch_array($opskrifter)) { //starter opskrift løkken
                    extract($opskrift); // laver rækken om til variabler
                   
                    // Tilpasning af længde på overskrift
                    if(strlen($overskrift) >= 40) {
                        $overskrift = substr($overskrift, 0, 38);
                        $overskrift .= "..";
                    }
                   
                    echo "<tr><td>&nbsp; &#8250; <a href=\"vis_opskrift.php?id=$opskriftid\">$overskrift</a></td></tr>"; //udskriver opskriftens navn
                }//lukker opskrift løkken
               
                echo "<tr><td>&nbsp;</td></tr>";
                $i++;
            }//lukker kategori løkken
           
            echo "</table></td></tr>";
            echo "<tr><td>&nbsp;</td></tr>";
            echo "</table>";//slutter tabellen
            echo "</td><td valign='top' width='50%'>";
        }//slut med alm. oversigt
       
    /*********
      SLUT
    *********/
       
        echo "</td></tr>";
        echo "</table>";//slutter stor tabel
        ?>

    </td>
  </tr>
  <tr>
    <td colspan="2" align="right">
      <?php
        $antalopskrifter = mysql_query("SELECT * FROM kogebog_opskrifter WHERE godkendt=1");
        $antalopskrifter = mysql_num_rows($antalopskrifter);
        echo "Opskrifter i alt: <b>$antalopskrifter</b>";
      ?>
    </td>
  </tr>
</table>

<?php include($_SERVER["DOCUMENT_ROOT"].'/php/end.php'); ?>
Avatar billede Slettet bruger
14. marts 2011 - 12:53 #20
Det ser bedre ud, der er lidt med fordeling af bredden og valign.
Ta et kig http://anakin.dk/opskrifter/index2.php
Kigger lidt grundigere på det i morgen formiddag, skal arbejde nat hele denne uge.
Avatar billede majbom Novice
14. marts 2011 - 18:11 #21
ja det er jo småting - men skriv hvis det driller :)
Avatar billede Slettet bruger
15. marts 2011 - 08:24 #22
Når man klikker på en kategori, så skal den også gerne vise dem i 4 kolonner.
http://anakin.dk/opskrifter/index2.php?mode=catview&catid=6
Avatar billede majbom Novice
15. marts 2011 - 09:54 #23
giver løsningen ikke næsten sig selv, når jeg nu har lavet det for dig på den ene side?
Avatar billede Slettet bruger
15. marts 2011 - 17:01 #24
Hmm.. det gør det nok :) Må lige kigge på det i weekenden.
Avatar billede majbom Novice
15. marts 2011 - 17:20 #25
:)

ellers må du jo sige til når det driller - du lærer trods alt mere ved selv at gå igang
Avatar billede Slettet bruger
25. maj 2011 - 07:37 #26
Lukket
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