/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Opdeling med overskrifter
Fra : Tank


Dato : 11-04-06 12:36

Hej folkens!

Jeg har en side med en masse artikler, som jeg gerne vil dele op i
kategorier. Hver post har så fx kategorien 1, 2 eller 3.
Nu vil jeg gerne vise alle posterne på én side med overskrifter.

<?
$query = mysql_query("SELECT * FROM snippets") or die ("Unable to open
table...");
$rowscount = mysql_num_rows($query);

while ($rowscount = mysql_fetch_array($query)) {
extract($rowscount);

if($category == '1')
{
echo ("<li>\n <a
href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
}
if($category == '2')
{
echo ("<li>\n <a
href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
}
if($category == '3')
{
echo ("<li>\n <a
href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
}
if($category == '4')
{
echo ("<li>\n <a
href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
}
}
?>

Problemet er hvordan jeg kan få overskriften ind også. Det er jo et
loop, så overskriften bliver gentaget, hvilket ikke var meningen :)
Jeg har også prøvet med flere queries, men kan forestille mig det ikke
er godt performance-mæssigt.

Ville være glad for nogle forslag, et eksempel måske, da jeg ikke er
helt vild php-guru endnu :D

Tak på forhånd!

- Tank

 
 
Erlend Klakegg Bergh~ (11-04-2006)
Kommentar
Fra : Erlend Klakegg Bergh~


Dato : 11-04-06 12:57

Tank skrev:
> Hej folkens!
>
> Jeg har en side med en masse artikler, som jeg gerne vil dele op i
> kategorier. Hver post har så fx kategorien 1, 2 eller 3.
> Nu vil jeg gerne vise alle posterne på én side med overskrifter.
>
> <?
> $query = mysql_query("SELECT * FROM snippets") or die ("Unable to open
> table...");
> $rowscount = mysql_num_rows($query);
>
> while ($rowscount = mysql_fetch_array($query)) {
> extract($rowscount);
>
> if($category == '1')
> {
> echo ("<li>\n <a
> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
> }
> if($category == '2')
> {
> echo ("<li>\n <a
> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
> }
> if($category == '3')
> {
> echo ("<li>\n <a
> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
> }
> if($category == '4')
> {
> echo ("<li>\n <a
> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
> }
> }
> ?>
>
> Problemet er hvordan jeg kan få overskriften ind også. Det er jo et
> loop, så overskriften bliver gentaget, hvilket ikke var meningen :)
> Jeg har også prøvet med flere queries, men kan forestille mig det ikke
> er godt performance-mæssigt.
>
> Ville være glad for nogle forslag, et eksempel måske, da jeg ikke er
> helt vild php-guru endnu :D

Informasjon trengs.

* Hvor henter du tittelen fra?
* Er det meningen at artiklene skal sorteres på kategori?
* Jeg ser ikke hva kategori har å si for artiklene i koden din i dag, er
det egentlig noen forskjell?

Gjerne enda litt informasjon om du har, for første postingen din
forteller at du er ute etter noe, det er noe kode der jeg ikke blir helt
klok på, og ellers har jeg litt problemer. (Kanskje fordi jeg er norsk? ;)


--

Vennlig hilsen

Erlend Klakegg Bergheim

Tank (11-04-2006)
Kommentar
Fra : Tank


Dato : 11-04-06 13:07

Jeg henter titlen fra en MySQL database (derfor query i koden).
Det jeg gerne vil, er at have en side, med artiklerne delt op i
kategorier, fx:
----------------------
KATEGORI 1
Artikel 1
Artikel 2

KATEGORI 2
Artikel 3
Artikel 4
----------------------

Den kode jeg postede skriver bare koden ud i én lang række. Hvordan får
jeg overskriften (som ikke bliver hentet fra databasen), ind mellem alle
posterne?

Erlend Klakegg Bergheim wrote:
> Tank skrev:
>> Hej folkens!
>>
>> Jeg har en side med en masse artikler, som jeg gerne vil dele op i
>> kategorier. Hver post har så fx kategorien 1, 2 eller 3.
>> Nu vil jeg gerne vise alle posterne på én side med overskrifter.
>>
>> <?
>> $query = mysql_query("SELECT * FROM snippets") or die ("Unable to open
>> table...");
>> $rowscount = mysql_num_rows($query);
>>
>> while ($rowscount = mysql_fetch_array($query)) {
>> extract($rowscount);
>>
>> if($category == '1')
>> {
>> echo ("<li>\n <a
>> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
>> }
>> if($category == '2')
>> {
>> echo ("<li>\n <a
>> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
>> }
>> if($category == '3')
>> {
>> echo ("<li>\n <a
>> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
>> }
>> if($category == '4')
>> {
>> echo ("<li>\n <a
>> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
>> }
>> }
>> ?>
>>
>> Problemet er hvordan jeg kan få overskriften ind også. Det er jo et
>> loop, så overskriften bliver gentaget, hvilket ikke var meningen :)
>> Jeg har også prøvet med flere queries, men kan forestille mig det ikke
>> er godt performance-mæssigt.
>>
>> Ville være glad for nogle forslag, et eksempel måske, da jeg ikke er
>> helt vild php-guru endnu :D
>
> Informasjon trengs.
>
> * Hvor henter du tittelen fra?
> * Er det meningen at artiklene skal sorteres på kategori?
> * Jeg ser ikke hva kategori har å si for artiklene i koden din i dag, er
> det egentlig noen forskjell?
>
> Gjerne enda litt informasjon om du har, for første postingen din
> forteller at du er ute etter noe, det er noe kode der jeg ikke blir helt
> klok på, og ellers har jeg litt problemer. (Kanskje fordi jeg er norsk? ;)
>
>

Tank (11-04-2006)
Kommentar
Fra : Tank


Dato : 11-04-06 13:32

Sorry, det er ikke koden den skriver ud i en lang række, det er posterne
den skriver ud. Hver post er tildelt et kategori nummer, derfor siger
jeg if($categori == '1') osv.

Håber nogen kan hjælpe!

Tank wrote:
> Jeg henter titlen fra en MySQL database (derfor query i koden).
> Det jeg gerne vil, er at have en side, med artiklerne delt op i
> kategorier, fx:
> ----------------------
> KATEGORI 1
> Artikel 1
> Artikel 2
>
> KATEGORI 2
> Artikel 3
> Artikel 4
> ----------------------
>
> Den kode jeg postede skriver bare koden ud i én lang række. Hvordan får
> jeg overskriften (som ikke bliver hentet fra databasen), ind mellem alle
> posterne?
>
> Erlend Klakegg Bergheim wrote:
>> Tank skrev:
>>> Hej folkens!
>>>
>>> Jeg har en side med en masse artikler, som jeg gerne vil dele op i
>>> kategorier. Hver post har så fx kategorien 1, 2 eller 3.
>>> Nu vil jeg gerne vise alle posterne på én side med overskrifter.
>>>
>>> <?
>>> $query = mysql_query("SELECT * FROM snippets") or die ("Unable to
>>> open table...");
>>> $rowscount = mysql_num_rows($query);
>>>
>>> while ($rowscount = mysql_fetch_array($query)) {
>>> extract($rowscount);
>>>
>>> if($category == '1')
>>> {
>>> echo ("<li>\n <a
>>> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
>>> }
>>> if($category == '2')
>>> {
>>> echo ("<li>\n <a
>>> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
>>> }
>>> if($category == '3')
>>> {
>>> echo ("<li>\n <a
>>> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
>>> }
>>> if($category == '4')
>>> {
>>> echo ("<li>\n <a
>>> href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
>>> }
>>> }
>>> ?>
>>>
>>> Problemet er hvordan jeg kan få overskriften ind også. Det er jo et
>>> loop, så overskriften bliver gentaget, hvilket ikke var meningen :)
>>> Jeg har også prøvet med flere queries, men kan forestille mig det
>>> ikke er godt performance-mæssigt.
>>>
>>> Ville være glad for nogle forslag, et eksempel måske, da jeg ikke er
>>> helt vild php-guru endnu :D
>>
>> Informasjon trengs.
>>
>> * Hvor henter du tittelen fra?
>> * Er det meningen at artiklene skal sorteres på kategori?
>> * Jeg ser ikke hva kategori har å si for artiklene i koden din i dag,
>> er det egentlig noen forskjell?
>>
>> Gjerne enda litt informasjon om du har, for første postingen din
>> forteller at du er ute etter noe, det er noe kode der jeg ikke blir
>> helt klok på, og ellers har jeg litt problemer. (Kanskje fordi jeg er
>> norsk? ;)
>>
>>

Bertel Lund Hansen (11-04-2006)
Kommentar
Fra : Bertel Lund Hansen


Dato : 11-04-06 13:43

Tank skrev:

> Jeg har en side med en masse artikler, som jeg gerne vil dele op i
> kategorier. Hver post har så fx kategorien 1, 2 eller 3.
> Nu vil jeg gerne vise alle posterne på én side med overskrifter.

Din kode viser alle filerne i rækkefølge, og det samme vil ske
hvis du fjerne alle test med $category.

En konstruktion kunne være:

for ($category=; $category<117; ++$category) {
   echo $overskrift[$category];
   $query = mysql_query("SELECT * FROM snippets")
   or die ("Unable to open table...");
   if ($category passer med noget fra databasen) {
      $name=$nogetandet_fra_databasen;
      echo ("<li>\n <a href='index.php?page=view&id=$id'>$name</a>\n</li>\n");
   }
}

men det giver flere læsninger i databasen. Hvis du kan lave en
SQL der kun trækker en bestemt kategori ud, vil det være mere
effektivt.

--
Bertel
http://bertel.lundhansen.dk/      http://fiduso.dk/

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste