Ver Mensaje Individual
  #19 (permalink)  
Antiguo 12/01/2013, 23:23
Avatar de andresdzphp
andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Migrar de mysql a PDO

Te estás olvidando de problemas con la inyección SQL

en mysql_* se "solucionaba":

Código PHP:
Ver original
  1. <?php
  2. $results = mysql_query(sprintf("SELECT * FROM table WHERE id='%s' AND name='%s'",
  3.                        mysql_real_escape_string($id), mysql_real_escape_string($name))) or die(mysql_error());
  4. $rows = array();
  5. while($row = mysql_fetch_assoc($results)){
  6.     $rows[] = $row;
  7. }

en PDO se usan las sentencias preparadas, simplemente:

Código PHP:
Ver original
  1. <?php
  2. $stmt = $db->prepare("SELECT * FROM table WHERE id=? AND name=?");
  3. $stmt->execute(array($id, $name));
  4. $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);

o de esta forma:

Código PHP:
Ver original
  1. <?php
  2. $stmt = $db->prepare("SELECT * FROM table WHERE id=:id AND name=:name");
  3. $stmt->bindValue(':id', $id, PDO::PARAM_INT);
  4. $stmt->bindValue(':name', $name, PDO::PARAM_STR);
  5. $stmt->execute();
  6. $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);

Se ve más fácil con PDO.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP