Vorri passare dalle funzioni mysql a PDO.
Il codice qui sotto è un pezzo di classe che esegue funzioni db tramite PDO
La pagina dove richiamo la classecodice:function connect() { global $host; global $db_name; global $db_user; global $db_psw; $con_db = 'mysql:host='.$host.';dbname='.$db_name; try { /*tentativo di connessione*/ $db = new PDO($con_db , $db_user, $db_psw); } catch(PDOException $e) { echo 'Attenzione connessione al database fallita: '.$e->getMessage(); } return $db; } function query($sql) { $db = $this->connect(); $db->beginTransaction(); /*disabilitazione dell'auto-commit*/ $query = $db->prepare($sql); $query->execute(); $result = $db->commit(); /* applica le modifiche*/ return $query; } function fetch_both($result) { try { $db = $this->query($result); $result = $db->fetch(PDO::FETCH_BOTH); } catch(PDOException $e) { echo 'Attenzione funzione fetch_both: '.$e->getMessage(); } return $result; }
IL PROBLEMA:codice:<?php $pagina= new pagine(); $pagine = $pagina->pagina('index'); while ($dettagli_pagina = $pagina->fetch_both($pagine)) {echo $dettagli_pagina['nome'].' '.$dettagli_pagina['testo']; }?>
se tolgo il while mi stampa il 1° record senza problemi.
Se cerco tramite un ciclo di stampare più record mi stampa tante volte solo il 1° record poi si interrompe per troppo tempo di esecuzione.
Aiuto![]()

Rispondi quotando
