[PHP] Database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Lorenzo

lorenzo

30/01/2008 09:55:00
Quote Anchor link
Ik heb een veld "Berichten"
Ik wil de laatste 5 berichten eruit halen die eerste paar hoef ik niet.

hoe doe ik dat?
 
PHP hulp

PHP hulp

26/05/2024 14:48:10
 
Joren de Wit

Joren de Wit

30/01/2008 09:57:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
SELECT bericht
FROM tabel
ORDER BY datum DESC
LIMIT 5
 
- wes  -

- wes -

30/01/2008 09:57:00
Quote Anchor link
ORDER BY id / datum / etc
LIMIT 0,5

kijk daar eens naar
 
Lorenzo

lorenzo

30/01/2008 10:03:00
Quote Anchor link
bedankt wes en blanche ik heb het nu ;)
 
Joren de Wit

Joren de Wit

30/01/2008 10:06:00
Quote Anchor link
@Wes: liever niet sorteren op id. Jij weet net als ik dat je aan een id geen enkele waarde kunt hechten ;-)
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Lorenzo

lorenzo

30/01/2008 10:09:00
Quote Anchor link
http://img168.imageshack.us/img168/586/updatems2.png

hoe zou ik het beste dit kunnen doen

ik heb een input en daar kan ik mee het veld "berichten" updaten.

en die moet dan bovenaan staan.
 
- wes  -

- wes -

30/01/2008 10:09:00
Quote Anchor link
true
 
Joren de Wit

Joren de Wit

30/01/2008 10:11:00
Quote Anchor link
In je tabel met berichten sla je in een kolom van het type DATETIME op wanneer een bericht aangemaakt en/of voor het laatst gewijzigd is. Vervolgens kun je deze kolom gebruiken in je ORDER BY om er op te sorteren...
 
Lorenzo

lorenzo

30/01/2008 10:18:00
Quote Anchor link
Blanche hoe bdl je?

ik heb nu dit in de Database:

id, int, auto_increment, primaire sleutel
berichten varchar

en nu moet ik nog een datetime maken ?
 
- wes  -

- wes -

30/01/2008 10:22:00
Quote Anchor link
correctum
 
Lorenzo

lorenzo

30/01/2008 10:25:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
SQL-query:
CREATE TABLE `wedstrijden` (
`id` INT( 250 ) NOT NULL AUTO_INCREMENT ,
`berichten` VARCHAR( 250 ) NOT NULL ,
`datetime` VARCHAR( 250 ) NOT NULL ,
PRIMARY KEY ( `id` )
) TYPE = MYISAM ;


heb ik nu ;).

nu heb ik dit

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
    <div id="recent_matches">
        <ul class="side_list">
            <li><span class="lose">20-10</span> eQuality vs ClanTemplates</li>
            <li><span class="win">20-10</span> eQuality vs ClanTemplates</li>
            <li><span class="lose">20-10</span> eQuality vs ClanTemplates</li>
            <li><span class="win">20-10</span> eQuality vs ClanTemplates</li>
            <li><span class="lose">20-10</span> eQuality vs ClanTemplates</li>
        </ul>
    </div>


en hoe zal ik dat moeten maken heb totaal geen idee.
 
Frank -

Frank -

30/01/2008 10:31:00
Quote Anchor link
`datetime` VARCHAR( 250 ) NOT NULL ,

En waar is dan nu de datum met de tijd? DATETIME is een datatype, net zoals VARCHAR een datattype is. Een VARCHAR gebruik je echter nooit, helemaal nooit, voor een datum en/of tijd. Grootste fout die je kunt maken.

Zie de handleiding.

Ps. VARCHAR gebruik je pas wanneer er geen beter datatype voorhanden is.
Edit:
MYISAM mag je omzetten naar innodb. Met MYISAM kun je geen relationele database maken, het is niet meer dan een brok ellende.
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Joren de Wit

Joren de Wit

30/01/2008 10:31:00
Quote Anchor link
Quote:
`datetime` VARCHAR( 250 ) NOT NULL
Helaas, 2 fouten in 1 regel.

Allereerst mag een kolom nooit 'datetime' heten, dat is namelijk een gereserveerd woord in MySQL. Dat het door gebruik van backticks wel toegestaan wordt, is eerder een bug dan een functionaliteit. Backticks horen niet in je queries thuis!

Verder moet die betreffende kolom natuurlijk wel van het type DATETIME zijn. Met een datumtijd stempel in een VARCHAR kun je helemaal niets...
 
Lorenzo

lorenzo

30/01/2008 10:37:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
SQL-query:
ALTER TABLE `wedstrijden` CHANGE `datetime` `dedatum` DATETIME NOT NULL


ja ik heb het nu veranderd.

hoe zou ik dat nu in de
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<div id="recent_matches">
        <ul class="side_list">
            <li><span class="lose">20-10</span> eQuality vs ClanTemplates</li>
            <li><span class="win">20-10</span> eQuality vs ClanTemplates</li>
            <li><span class="lose">20-10</span> eQuality vs ClanTemplates</li>
            <li><span class="win">20-10</span> eQuality vs ClanTemplates</li>
            <li><span class="lose">20-10</span> eQuality vs ClanTemplates</li>
        </ul>
    </div>


kunnen krijgen?

ik heb al
$sql = "SELECT blabla"
$query = mysql_query($sql);

$fetch = mysql_fetch_assoc($query);
Gewijzigd op 01/01/1970 01:00:00 door lorenzo
 
Frank -

Frank -

30/01/2008 10:39:00
Quote Anchor link
Wat dacht je hier van?

Edit: $query is bij jou geen query, maar een resultset. $result lijkt mij dan een betere naam.
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Lorenzo

lorenzo

30/01/2008 10:51:00
Quote Anchor link
ik heb die tutorial gelezen.

maar ik heb die html code in de <li>staan hoe moet ik dat dan oplossen met de database?
steeds een anderen $sql aanmaken? ofwa?
 
Joren de Wit

Joren de Wit

30/01/2008 10:54:00
Quote Anchor link
Nope, gebruik een while loop om de resultaten in te fetchen:
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
22
23
24
25
26
<?php
$sQuery
= "
    SELECT bericht
    FROM tabel
    ORDER BY datum DESC
    LIMIT 5
"
;

if(!$rResult = mysql_query($sQuery))
{

    trigger_error(mysql_error().'<br />In query: '.$sQuery);
}

elseif(mysql_num_rows($rResult) == 0)
{

    trigger_error('Geen resultaten met query: '.$sQuery);
}

else
{
    echo '<ul>';
    while($row = mysql_fetch_assoc($rResult))
    {

        echo '<li>'.$row['bericht'].'</li>';
    }

    echo '</ul>';
}

?>
 



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.