Overzicht van winkels

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Piet Jansen

Piet Jansen

13/05/2012 16:41:38
Quote Anchor link
Beste mensen,

Ik moet voor een school opdrachtje (huiswerk) even het volgende doen: ik moet uit een database de naam, adres, plaats en telefoonnummers van een aantal winkels in beeld tonen. Het lukte met andere dingen, de manier waarop ik het doe, maar nu niet omdat er meerde rows zijn.

Bij "winkel" staan nu de volgende rows (is dit het goede woord hiervoor?):
Wcode, Naam, Adres, Plaats en Telefoonnr.

Dit is mijn code:
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
27
28
<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title>Winkels | Firstchoice</title>
    <style type="text/css">
        #winkels {
            width: 200px;
            position: absolute;
            margin: 0px;
        }
    </style>
</head>
<body>
    <div id="winkels">
        <?php
            
            $post
=("SELECT Wcode, Naam, Adres, Plaats, Telefoonnr FROM winkel");
            $result = mysql_query($post);
            while($row = mysql_fetch_assoc($result) or die (mysql_error());)
            {

                echo $row['post'];
            }
    
            
        ?>

    </div>
</body>
</html>


Connectie met de database gaat goed, alleen krijg ik deze error:
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in locatie on line 29

Lijn 29 is daar waar nu de
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php tag staat (ik heb de connectie script even weggehaald om het overzichtelijker voor jullie te maken. Waarom werkt mijn while loop niet?

Mvg,
Piet
Gewijzigd op 13/05/2012 16:44:13 door Piet Jansen
 
PHP hulp

PHP hulp

18/12/2024 13:41:28
 
- SanThe -

- SanThe -

13/05/2012 16:44:14
Quote Anchor link
Je query zal mislukt zijn.
Bouw nette foutafhandeling in.
 
Piet Jansen

Piet Jansen

13/05/2012 16:44:48
Quote Anchor link
Wat bedoel je met fouthandeling? Heeft dat er alles mee te maken?

Toevoeging op 13/05/2012 16:58:58:

Ik heb nu dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
            $post
=("SELECT Wcode, Naam, Adres, Plaats, Telefoonnr FROM winkel");
            $result = mysql_query($post);
            while($row = mysql_fetch_assoc($result))
            {

                echo $row['post'].'<br />';
            }
            
        ?>


Nu krijg ik deze error 16 keer onder elkaar, dat is evenveel als het aantal records in de row:

Notice: Undefined index: post in D:\Program Files\blabla\index.php on line 34. Lijn 34 is nu het stuk waar 'echo $row['post'].'<br />';' staat.
 
Obelix Idefix

Obelix Idefix

13/05/2012 17:46:03
Quote Anchor link
Benieuwd hoe je het wel werkend hebt gekregen met maar 1 record als resultaat.
Je echo zal ook toen niet gelukt zijn, als je het op dezelfde manier hebt gedaan.

Het is een opdracht voor school? Zie helaas vaker dat daar voorbij gegaan wordt aan o.a. foutafhandeling. Wat je foutmelding betekent, kun je vinden met Google.
Hint: waar moet $row de waarde post vandaan halen? Die heb je niet in je database staan.
 
- SanThe -

- SanThe -

13/05/2012 17:55:13
Quote Anchor link
Piet Jansen op 13/05/2012 16:44:48:
Wat bedoel je met fouthandeling?


http://www.phphulp.nl/php/tutorial/data-verwerking/foutafhandeling-query-sql/735/
 
Chris PHP

Chris PHP

15/05/2012 08:23:38
Quote Anchor link
@piet,

is je $row['post'] wel een geldig veld in je tabel?
Gewijzigd op 15/05/2012 10:15:49 door Chris PHP
 
Reshad F

Reshad F

15/05/2012 10:08:57
Quote Anchor link
je echo'd de tabelname ipv de rijen die je nodig hebt. en bouw goede foutafhandeling in ( dus niet or die )
 
Niels van Dijk

Niels van Dijk

15/05/2012 13:03:46
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
            $post
=("SELECT Wcode, Naam, Adres, Plaats, Telefoonnr FROM winkel");
            $result = mysql_query($post);
            while($row = mysql_fetch_assoc($result))
            {

                echo $row['post'].'<br />';
            }
            
        ?>


Wat gaat hier mis? Op regel 2 mist er iets zodat hij niets ophaalt dus wat gebeurt er nu

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
            $post
= mysql_query("SELECT Wcode, Naam, Adres, Plaats, Telefoonnr FROM winkel");
            $result = mysql_query($post);
            while($row = mysql_fetch_assoc($result))
            {

                echo $row['post'].'<br />';
            }
            
        ?>
 
- SanThe -

- SanThe -

15/05/2012 13:09:15
Quote Anchor link
@Niels: Waar gaat dit over?
Jij gaat nu een query op een resultaat van een query uitvoeren.
 
Q S

Q S

15/05/2012 13:12:15
Quote Anchor link
Volgens mij zit hier alleen de fout in regel 6.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
echo $row['post'].'<br />';


moet worden

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
echo $row['Naam'].'<br />';


en zo verder
 
Chris PHP

Chris PHP

15/05/2012 13:12:50
Quote Anchor link
@SanThe,

Ja idd, hij kan gewoon heel de $result weglaten en de $result van de assoc gewoon vervangen door $post

@Niels
Echter zal het ook daar fout gaan aangezien $row['post'] niet bestaat, hij vraagt nergens deze velden op in zijn query.

Dit zou moeten werken zoals je het wilt.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
            $post
= mysql_query("SELECT Wcode, Naam, Adres, Plaats, Telefoonnr FROM winkel");
                        while($row = mysql_fetch_assoc($post))
            {

                echo $row['Wcode'].' '.$row['Naam'].' '.$row['Adres'].' '.$row['PLaats'].' '$row['Telefoonnr'].'<br>';
            }
            
?>


Voor de nette opmaak zul je css/div of table/css moeten gebruiken.
Gewijzigd op 15/05/2012 13:20:02 door Chris PHP
 



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.