Pagina halen uit database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Niek Weevers

Niek Weevers

30/10/2008 22:04:00
Quote Anchor link
Hallo,

ik heb een database met een tabel 'paginas'. Hier staat titel, subtitel en text in ( en id).
Op de home wil ik id 1 ophalen en plaatsen.
Ik heb het wel werkend, maar wil graag van jullie weten of ik het zo op de beste manier doe, of dat het eigenlijk makkelijker kan.
ps ik werk met lossen php bestanden voor elke pagina.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php

$sql
= "SELECT * FROM paginas WHERE pag_id = 1";
$result = mysql_query($sql);
                        
if (!$result)
{

    echo 'foutmelding';
}

else
{
while ($row = mysql_fetch_array($result))
{

$titel = htmlentities($row['titel']);
$subtitel = htmlentities($row['subtitel']);
                            
echo $titel;
}
                                                            
}

?>
 
PHP hulp

PHP hulp

24/02/2024 23:01:44
 
Thijs Damen

Thijs Damen

30/10/2008 22:21:00
Quote Anchor link
is het niet makkelijker een class of functie te maken die je kan aanroepen waar je deze code inzet om dan op de bewuste pagina iets van:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
echo $page->getTitel($id);
echo $page->getSubtitel($id);


te doen?
 
Jan Koehoorn

Jan Koehoorn

30/10/2008 22:49:00
Quote Anchor link
@ Thijs: in jouw voorbeeld zou dat twee query's kosten.
@ Niek: die * in je query maakt hem nodeloos trager. Vraag alleen de velden die je wilt. Verder is die while een beetje overbodig. Je haalt immers maar 1 record op. Ik zou er zoiets van maken:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
    ini_set ('display_errors', 1);
    error_reporting (E_ALL | E_STRICT);

    $sql = "
        SELECT titel, subtitel
        FROM paginas
        WHERE pag_id = 1
        "
;
    if (!$result = mysql_query ($sql)) {
        echo 'foutmelding';
    }

    else {
        if ($row = mysql_fetch_array ($result)) {
            $titel = htmlentities ($row['titel']);
            $subtitel = htmlentities ($row['subtitel']);
            echo $titel;
        }
    }

?>
 
Niek Weevers

Niek Weevers

31/10/2008 08:21:00
Quote Anchor link
Thnx! ik dacht al dat ik iets overbodigs deed met die while, maar wist niet meteen een andere mogelijkheid.
 
Thijs Damen

Thijs Damen

31/10/2008 08:51:00
Quote Anchor link
@Jan: Dat klopt. maar met mijn manier blijft het herbruikbaar en ben je niet gebonden aan alleen deze query. Wil je ooit eens alleen de titel van de pagina hebben (voor bijvoorbeeld in de <title> tags) heb je daar al je functie voor geschreven.

Een andere oplossing is natuurlijk om $page->getDetails; een array mee te geven met title and subtitle. hou je je code wat schoner.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.