Foros del Web » Programando para Internet » PHP »

Unas preguntas tontas sobre funciones

Estas en el tema de Unas preguntas tontas sobre funciones en el foro de PHP en Foros del Web. hola como andan queria haces unas preguntitas muy tontas seran para ustedes pero para mi no todavia queria preguntarles cuando y para que sirve esta ...
  #1 (permalink)  
Antiguo 13/12/2011, 06:28
 
Fecha de Ingreso: diciembre-2011
Mensajes: 5
Antigüedad: 12 años, 4 meses
Puntos: 0
Información Unas preguntas tontas sobre funciones

hola como andan queria haces unas preguntitas muy tontas seran para ustedes pero para mi no todavia

queria preguntarles cuando y para que sirve esta linea $this-> a este this lo veo en cada script que miro y no logro entender cuando usarlo y para que sirve de antemano muchas gracias

ahah otra pregunta esta linea para la mysql mysql_real_escape_string cuando se usa y tambien para que sirve.

muchas gracias jonathan
  #2 (permalink)  
Antiguo 13/12/2011, 06:38
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Unas preguntas tontas sobre funciones

1. Hace referencia a la instancia que estás usando. Si todavía no dominas OOP, te recomiendo que empieces a leer sobre el tema. Pero en esencia es que está haciendo referencia a si mismo, algo como esto
Código PHP:
Ver original
  1. <?php
  2. class Foo
  3. {
  4.     private $_foo = 'foo bar baz';
  5.     public function bar()
  6.     {
  7.         return $this->_foo;
  8.     }
  9. }
  10. $obj = new Foo();
  11. echo $obj->bar(); // imprime foo bar baz
¿Vez como imprime lo que hayas declarado en esa misma instancia? Se hace referencia a si mismo.

2. El manual es bastante explicito y tiene ejemplos, ¿qué no entendiste exactamente? http://php.net/manual/es/function.my...ape-string.php
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 13/12/2011, 08:02
 
Fecha de Ingreso: julio-2010
Mensajes: 393
Antigüedad: 13 años, 8 meses
Puntos: 67
Respuesta: Unas preguntas tontas sobre funciones

Creo que con el ejemplo de abimaelrc lo más probable es que nuestro amigo jonath4n está más confundido ahora (espero que no sea así) :)

jonath4n: Estudia php con programación orientada a objetos (POO en español, OOP en inglés), solo de esa forma podrás entenderlo realmente.

Saludos!
__________________
Páginas web de alta calidad y hechas a la medida.
  #4 (permalink)  
Antiguo 13/12/2011, 08:25
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Unas preguntas tontas sobre funciones

Puede ser
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 13/12/2011, 08:35
marcofbb
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Unas preguntas tontas sobre funciones

La 1 ya te la respondieron, pero para que no te confudas


$this-> se utiliza en las class, para llamar una variable dentro de esa misma clase puede ser de ambito privado o publico.



ahora te respondo la 2

mysql_real_escape_string es para darle mas seguridad a las variables que vamos a enviar a la base de datos, lo que hace esta funcion es agregar \ a lo siguiente: \x00, \n, \r, \, ', " y \x1a



ejemplo:

$var = "Jaun Carlos"; // Imagina que esta variable se optiene via get o post
$var = mysql_real_escape_string($var);

$sql = "SELECT * FROM users WHERE name = '{$var}' LIMIT 1";

Esto quedaria SELECT * FROM users WHERE name = 'Juan Carlos' LIMIT 1

Pero si en var pondriamos Juan 'El grande' Carlos

La sentencia sql seria esta otra

SELECT * FROM users WHERE name = 'Juan \'El grande\' Carlos' LIMIT 1

Si o si hay que poner los ' ', en el where para darle mas seguridad.

Etiquetas: eror, escapes, mysql.php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:33.