sql >> Database >  >> RDS >> Mysql

SQL_CALC_FOUND_ROWS / FOUND_ROWS() werkt niet in PHP

Dank je.

Als ik iets analoog aan uw voorbeeld op de mysql-opdrachtregel uitvoerde, zou het werken; maar het uitvoeren van het vanuit php, het is mislukt. De tweede query moet de eerste "kennen", dus ik denk dat de persistentie/het geheugen dat de twee query's met elkaar verbindt, in de war raakte door de php.

(Het blijkt dat Wordpress dit type zoekopdracht gebruikt om zijn paginering uit te voeren - dus ons grotere probleem was dat de paginering in een WordPress-installatie plotseling stopte met werken toen we naar php 5.2.6 verhuisden ... en het uiteindelijk hebben opgespoord naar de FOUND_ROWS( )).

Gewoon om te posten voor mensen die dit in de toekomst kunnen tegenkomen... voor mij was het de php-instelling "mysql.trace_mode" - deze was standaard "aan" in 5.2.6 in plaats van "uit" zoals eerder, en om de een of andere reden verhindert de FOUND_ROWS() om te werken.

Als "fix" kunnen we dit ofwel in elke php-pagina plaatsen (eigenlijk in een algemene "include"):

ini_set("mysql.trace_mode", "0");

of voeg dit toe aan de .htaccess:

php_value mysql.trace_mode "0"

Nogmaals bedankt, Jerry



  1. Selecteer ALLE velden die alleen HOOFDLETTERS bevatten

  2. Ik probeer een bestand te kopiëren, maar krijg een foutmelding

  3. Hoe de ontwikkelings- en productiedatabase te synchroniseren

  4. Hoe aparte rijen te selecteren zonder group by statement te gebruiken