Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in index.php on line 64:
Wat doe ik precies fout?PHP Code:
while($row=mysql_fetch_array($query)){
- PHP: Fout eigen script.
-
04-10-2015, 18:57 #1
- Berichten
- 392
- Lid sinds
- 15 Jaar
PHP: Fout eigen script.
-
In de schijnwerper
Naaralicante.nl - Startklaar platform met meer mogelijkheden - 49k aan contentWebsite te koopIndonesie boeken - 525 artikelen in logische categorien - Startklaar!Website te koopcentenveiling website/scriptWebsite te koopInstagramVolgersKopen.nl | Perfect voor aanbieden instagram volgersDomein te koop -
04-10-2015, 19:51 #2
- Berichten
- 1.346
- Lid sinds
- 17 Jaar
Re: PHP: Fout eigen script.
Misschien moet je even de hele code posten want zo is het niet te zien.
-
04-10-2015, 19:53 #3
- Berichten
- 392
- Lid sinds
- 15 Jaar
Re: PHP: Fout eigen script.
Code:<?php if(isset($_SESSION['cart'])){ $sql="SELECT * FROM products WHERE id_product IN ("; foreach($_SESSION['cart'] as $id => $value) { $sql.=$id.","; } $sql=substr($sql, 0, -1).") ORDER BY name ASC"; $query=mysql_query($sql); while($row=mysql_fetch_array($query)){ ?> <p><?php echo $row['name'] ?> x <?php echo $_SESSION['cart'][$row['id_product']]['quantity'] ?></p> <?php } ?>
-
04-10-2015, 20:03 #464BitsWebhosting.EU
- Berichten
- 2.092
- Lid sinds
- 17 Jaar
Re: PHP: Fout eigen script.
Als er niks in de cart zit, krijg je een fout sql statement. Omdat je niet controleert of het sql query commando wel goed is uitgevoerd, ga je proberen te fetchen met een $query waarde die FALSE is en dan krijg je inderdaad de melding dat het geen resource identifier is, maar een boolean.
-
04-10-2015, 20:24 #5
- Berichten
- 1.346
- Lid sinds
- 17 Jaar
Re: PHP: Fout eigen script.
Je bent ook verkeerd bezig, ik denk dat je meer zoiets nodig hebt.
En is de SESSION al geen array?
Code:<?php if(isset($_SESSION['cart'])) { foreach($_SESSION['cart'] as $id => $value) { $IDs .= $id.','; // ID's aan elkaarplakken } $IDs = substr($IDs, 0, -1); // laatse comma weghalen $sql = "SELECT * FROM products WHERE id_product IN ('". mysql_real_escape_string($IDs)."') ORDER BY name ASC"; if(!$res = mysql_query($sql)) { trigger_error(mysql_error().'<br />In query: '.$sql); } elseif(mysql_num_rows($res) == 0) { // Niets gevonden } else { while($row = mysql_fetch_array($res)) { echo '<p>'.$row['name'].' x '.$_SESSION['cart'][$row['id_product']]['quantity'].'</p>'; } } } ?>
-
04-10-2015, 20:51 #664BitsWebhosting.EU
- Berichten
- 2.092
- Lid sinds
- 17 Jaar
Re: PHP: Fout eigen script.
Ook bovenstaande geeft een syntax fout als de array leeg is. Wordt wel afgevangen natuurlijk.
Handiger is om iets zoals:
Code:if ( count($_SESSION['cart']) > 0 ) { $sql = "select * from tabel where id_product in (" . join(',', array_keys($_SESSION['cart'])) . ")"; etc. }
Laatst aangepast door John Timmer : 04-10-2015 om 20:58
-
05-10-2015, 07:20 #7
- Berichten
- 217
- Lid sinds
- 17 Jaar
Re: PHP: Fout eigen script.
Denkt u ook aan de beveiliging, in dit geval zou ik de $id's forceren via intval naar een nummer.
-
09-10-2015, 11:53 #8Particulier
- Berichten
- 1.002
- Lid sinds
- 16 Jaar
Re: PHP: Fout eigen script.
Ik zou even kijken met oog op beveiliging tegen sql injections naar PDO prepare php.net
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic