Ver Mensaje Individual
  #4 (permalink)  
Antiguo 22/08/2013, 16:19
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 10 meses
Puntos: 379
Respuesta: Para actualizar función (a pdo)

Eso es por que en la declaracion de tu funcion no estas pasando la variable $conn como argumento. Tu función debiera de ser algo asi
Código PHP:
Ver original
  1. $user = 'root';
  2. $pass = '';
  3. $conn = new PDO('mysql:host=localhost;dbname=menu_categorias', $user, $pass);  
  4.  
  5. //pasando como argumento $conn
  6. function display_children($parent, $level, $conn) {
  7.     $result = $conn->prepare("SELECT a.id, a.label, a.link, Deriv1.Count FROM `menu` a  LEFT OUTER JOIN (SELECT parent, COUNT(*) AS Count FROM `menu` GROUP BY parent) Deriv1 ON a.id = Deriv1.parent WHERE a.parent=" . $parent);
  8. $result->execute();    
  9.     echo "<ul>";
  10.     while($row = $result->fetch(PDO::FETCH_ASSOC))  
  11.     {
  12.         if ($row['Count'] > 0) {
  13.             echo "<li><a href='" . $row['link'] . "'>" . $row['label'] . "</a>";
  14.             display_children($row['id'], $level + 1);
  15.             echo "</li>";
  16.         } elseif ($row['Count']==0) {
  17.             echo "<li><a href='" . $row['link'] . "'>" . $row['label'] . "</a></li>";
  18.         } else;
  19.     }
  20.     echo "</ul>";
  21. }
  22.  
  23. echo display_children(6, 1);
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.