får ikke alle poster i SELECT med PDO

Tags:    select pdo mysqli php

Jeg får ikke alle posterne frem i min SELECT forespørgsel
der er 4 poster i min db ved denne søgning men kun 3 fremkaldes

PHP:
Fold kodeboks ind/udPHP kode 

HTML
Fold kodeboks ind/udHTML kode 




Indlæg senest redigeret d. 31.10.2015 17:48 af Bruger #16819
5 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato

$count_kurv = $stmt_kurv->rowCount() er en copy paste fejl, jeg har ; i mit script.

regnede jeg også med


uanset hvad jeg gør så er det den første linie der mangler, når jeg skriver til skærmen?

man skulle næsten tro du lave en $stmt_kurv->fetch før din while løkke, i så fald er den ikke vist
du kan iøvrigt optimere din fetch ved at angive hvilke type du vil have ud
jeg bruger altid PDO::FETCH_ASSOC eller PDO::FETCH_OBJ
eks
$stmt_kurv->fetch(PDO::FETCH_ASSOC)) {

nb lagde du mærke til jeg rettede din
$stmt_kurv->bindValue(':ordre_id', $ordre_id, PDO :: PARAM_INT); // *
til
$stmt_kurv->bindParam(':ordre_id', $ordre_id, PDO :: PARAM_INT); // *

* mellemrum sat ind omkring :: for ikke at få en smiley

hvorfor har du givet det tag'et mysqli det er jo et andet API end det du vil bruge ??, named placeholders er først kommet til i det API der hedder PDO
(ordre_id = :ordre_id)
Prepare Statement er lidt anderledes i Mysqli end i PDO, men der er også en del ligheder, tænkemåden er den sammen




Indlæg senest redigeret d. 31.10.2015 21:06 af Bruger #16075
>tæller 4 poster
har du prøvet at tælle i db ??
$count_kurv = $stmt_kurv->rowCount() <-- her mangler da et ;


prøvede lige et lille dumt eks, og det tæller rigtigt
Fold kodeboks ind/udKode 





Indlæg senest redigeret d. 31.10.2015 19:06 af Bruger #16075
Hej Ronny, tak for hjælpen :-)
$count_kurv = $stmt_kurv->rowCount() er en copy paste fejl, jeg har ; i mit script.
uanset hvad jeg gør så er det den første linie der mangler, når jeg skriver til skærmen?
Når jeg skriver til et andet script kommer alle linier med.
Kan bare ikke se fejlen??







Fandt min fejl havde en if() før min while løkke.
Får alle mine poster :-)
hvad er forskellen på bindParam og bindValue?




Fandt min fejl havde en if() før min while løkke.

går ud fra det er efter $stmt_kurv->execute();
hvad stod der i den if sætning ??, det er sådanne fejl man lærer af. :)


hvad er forskellen på bindParam og bindValue?

ref http://php.net/manual/en/pdostatement.bindvalue.php

Binds a value to a corresponding named or question mark placeholder in the SQL statement that was used to prepare the statement.


ref http://php.net/manual/en/pdostatement.bindparam.php

Binds a PHP variable to a corresponding named or question mark placeholder in the SQL statement that was used to prepare the statement. Unlike PDOStatement::bindValue(), the variable is bound as a reference and will only be evaluated at the time that PDOStatement::execute() is called.


ref https://www.google.dk/search?q=pdo+bindvalue+vs+bindparam
http://stackoverflow.com/questions/1179874/what-is-the-difference-between-bindparam-and-bindvalue
http://stackoverflow.com/questions/14413326/confusion-between-bindvalue-and-bindparam
http://www.webinaction.co.uk/coding-tutorials/mysql-pdo-tutorial/lesson-6-prepared-statements-with-placeholders/




t