login  Naam:   Wachtwoord: 
Registreer je!
 Forum

[PDO] Execute probleem, maar geen error (Opgelost)

Offline Wijnand - 21/08/2013 10:14 (laatste wijziging 21/08/2013 10:16)
Avatar van WijnandModerator Ik heb een probleem in mijn database class. Ik gebruik PDO.

Eerst doet hij de prepare-method en die gaat gewoon goed.

Dan doe ik execute en blijft hij lopen in een oneindige loop.

Zo doe ik de execute:
  1. $this->pdo_executed = $this->pdoStmt->execute($parameters);


Er gebeurd niets raars, het is een simpele: SELECT * FROM accounts WHERE username = ?.

De parameter die ik meegeef

  1. 0 => 'test'
  2. )



En ik krijg dus geen error terug, maar een oneindig-ladenpagina (letterlijk blijft hij doorgaan, hij stopt niet na een paar minuten ofzo).

Iemand enig idee?

[edit]
Goed om te weten, lokaal werkt het wel, maar op de host niet.

25 antwoorden

Gesponsorde links
Offline marten - 21/08/2013 10:47
Avatar van marten Beheerder Ik zou even SQL logging aanzetten. Kijken of hij in een loop komt. We hebben het zelf een x gehad met persistente connecties. Die kan je beter uitlaten in bepaalde situaties. Bij ons liep de server vol met connecties totdat hij zei zoek het uit.
Offline Rens - 21/08/2013 10:48
Avatar van Rens Gouden medaille

Crew algemeen
Hoi Wijnand,

Op PHP.net zie ik bij 'notes het volgende staan:

PHP.net schreef:
5.2.0 The keys from input_parameters must match the ones declared in the SQL. Before PHP 5.2.0 this was silently ignored.

Mogelijk heeft het hier iets mee te maken?

Tevens zie ik volgende comment er bij staan:
  1. <?PHP
  2. //This will not work
  3. $statement->execute($anarray);
  4.  
  5. //Do this to make it work
  6. $statement->execute(array_values($anarray));
Offline Wijnand - 21/08/2013 11:39
Avatar van Wijnand Moderator @Rens, helaas... beide dingen zijn het niet. array_values zorgt ervoor dat de keys weer opgeschoond worden, maar deze zijn goed (net gecontroleerd).

Verder gebruiken wij zowel lokaal als live php 5.3/4.

@Marten, hoe kun je sql logging verder aanzetten?
Offline marten - 21/08/2013 11:47
Avatar van marten Beheerder via mysql server kan je sql query logging aanzetten.
Offline Wijnand - 21/08/2013 11:54
Avatar van Wijnand Moderator Dat wordt lastig.. het is een linux machine en ik probeerde het net, maar ging niet werken... ik vind het stom, vooral omdat het in de test-versie wel werkt (test-server), maar live niet.
Offline marten - 21/08/2013 11:55
Avatar van marten Beheerder Wat zijn de verschillen tussen beide servers?
Offline Wijnand - 21/08/2013 11:57
Avatar van Wijnand Moderator Geen idee eigenlijk.. ik ben geen server-man... behalve windows/linux verschil (test = windows, live = linux).
Offline marten - 21/08/2013 12:03
Avatar van marten Beheerder Je kan 2 php info bestanden gaan vergelijken 
Offline Wijnand - 21/08/2013 12:08
Avatar van Wijnand Moderator Ik zie daar verder niets bijzonders is.. is er iets waarop ik moet letten? :-).
Offline marten - 21/08/2013 13:16
Avatar van marten Beheerder PDO instellingen, juiste ini sets die geladen worden. Paden verschil win <> linux
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2020 Sitemasters.be - Regels - Laadtijd: 0.286s