Toon posts:

[PHP] Krijg geen output van mysql query, alleen "Array"

Pagina: 1
Acties:
  • 323 views

Onderwerpen


  • ThinkPad
  • Registratie: juni 2005
  • Nu online

ThinkPad

Moderator Duurzame Energie & Domotica
Topicstarter
Ik ben bezig met een opdracht voor school, en ik moet een SQL query runnen binnen een PHP script.

Nu heb ik de query al klaar, en die werkt ook in phpmyadmin, maar in m'n PHP script niet.

mijn code:
PHP:
1
2
3
4
5
6
7
8
9
10
<?php  
mysql_connect("localhost","root","");
mysql_select_db("firstchoice");
$query="SELECT categorie, (besteld_aantal * verkoopprijs) As totaal FROM artikel, bestelregel GROUP BY Categorie";

$result = mysql_query ($query);
$row=mysql_fetch_array($result);
echo $row;
echo mysql_error();
?>


Het enige wat ik op m'n scherm zie is "Array" :?

[Voor 10% gewijzigd door ThinkPad op 09-10-2010 20:59]

Gas besparen door CV-tuning | Elektriciteit besparen
Geen vragen via privébericht die ook via het forum kunnen a.u.b.


  • console
  • Registratie: september 2002
  • Laatst online: 08:22
ThinkPad schreef op zaterdag 09 oktober 2010 @ 20:58:
Ik ben bezig met een opdracht voor school, en ik moet een SQL query runnen binnen een PHP script.

Nu heb ik de query al klaar, en die werkt ook in phpmyadmin, maar in m'n PHP script niet.

mijn code:
PHP:
1
2
3
4
5
6
7
8
9
10
<?php  
mysql_connect("localhost","root","");
mysql_select_db("firstchoice");
$query="SELECT categorie, (besteld_aantal * verkoopprijs) As totaal FROM artikel, bestelregel GROUP BY Categorie";

$result = mysql_query ($query);
$row=mysql_fetch_array($result);
echo $row;
echo mysql_error();
?>


Het enige wat ik op m'n scherm zie is "Array" :?
Komt omdat je een Array terug krijgt ;) Doe eens bv;
PHP:
1
echo $row['categorie'];

  • Matis
  • Registratie: januari 2007
  • Laatst online: 06:56

Matis

Rubber Rocket

Dat is toch ook precies wat er in de manual staat :?

Als je op die site eens kijkt naar de voorbeelden, dan zou je er wel uit moeten komen :)

[Voor 27% gewijzigd door Matis op 09-10-2010 21:07]

If money talks then I'm a mime
If time is money then I'm out of time


  • ThinkPad
  • Registratie: juni 2005
  • Nu online

ThinkPad

Moderator Duurzame Energie & Domotica
Topicstarter
Dan krijg ik dit terug:
code:
1
array(4) { [0]=> string(7) "Fitness" ["categorie"]=> string(7) "Fitness" [1]=> string(3) "350" ["totaal"]=> string(3) "350" }
console schreef op zaterdag 09 oktober 2010 @ 21:01:
[...]


Komt omdat je een Array terug krijgt ;) Doe eens bv;
PHP:
1
echo $row['categorie'];
Dan krijg ik alleen "Fitness" terug :S



Voor jullie beeldvorming, mijn query geeft dit als output, wat ook de bedoeling is:

code:
1
2
3
4
5
6
7
8
9
10
categorie   totaal
Fitness 350
Golf    2060
Hockey  190
Outdoor 425
Running 115
Tennis  170
Voetbal 185
Vrije tijd  875
Zwemsport   165

Gas besparen door CV-tuning | Elektriciteit besparen
Geen vragen via privébericht die ook via het forum kunnen a.u.b.


  • Matis
  • Registratie: januari 2007
  • Laatst online: 06:56

Matis

Rubber Rocket

Je moet ook door je result heen lopen, want de pointer van je $row wijst nu naar het eerste element (array) in je tweedimensionaal array.

If money talks then I'm a mime
If time is money then I'm out of time


  • console
  • Registratie: september 2002
  • Laatst online: 08:22
ThinkPad schreef op zaterdag 09 oktober 2010 @ 21:06:
[...]

Dan krijg ik dit terug:
code:
1
array(4) { [0]=> string(7) "Fitness" ["categorie"]=> string(7) "Fitness" [1]=> string(3) "350" ["totaal"]=> string(3) "350" }


[...]

Dan krijg ik alleen "Fitness" terug :S



Voor jullie beeldvorming, mijn query geeft dit als output, wat ook de bedoeling is:

code:
1
2
3
4
5
6
7
8
9
10
categorie   totaal
Fitness 350
Golf    2060
Hockey  190
Outdoor 425
Running 115
Tennis  170
Voetbal 185
Vrije tijd  875
Zwemsport   165
Je moet dan door je Array heen wandelen;

PHP:
1
2
3
4
while($row=mysql_fetch_array($result)) {
    echo $row['categorie'];
    echo $row['totaal'];
}

  • ItsValium
  • Registratie: juni 2009
  • Laatst online: 21:44
verdiep je eens in de types variabelen van zowat elke script-/programeertaal. Dan zul je zien dat het gedrag wat jou scriptje vertoont perfect normaal is.

probeer eens volgende :

PHP:
1
2
3
4
foreach ($row as $key => $value)
{
echo $key." = ".$value;
}


Echter dit is echt basiskennis, verdiep je maar eens in je handboek of in je lesmateriaal!

  • ThinkPad
  • Registratie: juni 2005
  • Nu online

ThinkPad

Moderator Duurzame Energie & Domotica
Topicstarter
Bedankt console!

Dat van jou werkt inderdaad

Heb het nog even aangepast zodat het leesbaar is:
PHP:
1
2
3
4
  echo $row['categorie']; 
    echo "\n";
    echo $row['totaal']; 
    echo "<br />";


P.S Sorry als dit basiskennis is, maar ik heb nooit eerder met PHP gewerkt, en met deze opdrachten moeten we het leren. En met problemen zoals dit weet ik niet echt waar ik moet beginnen.

Ik heb
PHP:
1
2
error_reporting(E_ALL);
echo mysql_error();
al aanstaan, dus dat scheelt al een hele hoop gelukkig.

[Voor 23% gewijzigd door ThinkPad op 09-10-2010 21:17]

Gas besparen door CV-tuning | Elektriciteit besparen
Geen vragen via privébericht die ook via het forum kunnen a.u.b.


  • NMe
  • Registratie: februari 2004
  • Laatst online: 25-09 21:32

NMe

Quia Ego Sic Dico.

ThinkPad, dit zal vast allemaal nieuw voor je zijn maar in de manualpagina van mysql_query of mysql_fetch_array, beiden functies die je gewoon blind gebruikt blijkbaar, staat precies uitgelegd wat je moet doen om aan je waardes te komen. Daarnaast kun je in geen enkele taal "zomaar" een array afdrukken, dus dat je even door je array heen zal moeten lopen had je eigenlijk ook zelf moeten kunnen verzinnen.

Omdat je hier best zelf uit had kunnen komen doe ik dit topic dicht. Dat is je nota bene eerder deze week door MueR in "[PHP] $_SESSION werkt niet" ook nog gezegd...

[Voor 11% gewijzigd door NMe op 09-10-2010 22:45]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1

Dit topic is gesloten.



Nintendo Switch (OLED model) Apple iPhone 13 LG G1 Google Pixel 6 Call of Duty: Vanguard Samsung Galaxy S21 5G Apple iPad Pro (2021) 11" Wi-Fi, 8GB ram Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2021 Hosting door True

Tweakers maakt gebruik van cookies

Bij het bezoeken van het forum plaatst Tweakers alleen functionele en analytische cookies voor optimalisatie en analyse om de website-ervaring te verbeteren. Op het forum worden geen trackingcookies geplaatst. Voor het bekijken van video's en grafieken van derden vragen we je toestemming, we gebruiken daarvoor externe tooling die mogelijk cookies kunnen plaatsen.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Forum cookie-instellingen

Bekijk de onderstaande instellingen en maak je keuze. Meer informatie vind je in ons cookiebeleid.

Functionele en analytische cookies

Deze cookies helpen de website zijn functies uit te voeren en zijn verplicht. Meer details

janee

    Cookies van derden

    Deze cookies kunnen geplaatst worden door derde partijen via ingesloten content en om de gebruikerservaring van de website te verbeteren. Meer details

    janee