Ver Mensaje Individual
  #38 (permalink)  
Antiguo 12/12/2013, 11:58
vosk
 
Fecha de Ingreso: agosto-2012
Mensajes: 601
Antigüedad: 11 años, 8 meses
Puntos: 83
Respuesta: Cambiar contenido de una variable mediante if

"...Y otra cosa lo del https ¿encripta los datos mas relevantes? ¿es un servicio por el cual hay que pagar?..."

Si y si; pero este ultimo si puede ser un no, depende de si sabes como crear un certificado e instalarlo en tu propio servidor de validacion; normalmente los servidores de alojamiento no te dejaran instalar tus propios certificados sino que tendras que comprarselos, puede que haya alguna excepcion, pero si que permiten la direccion de la validacion. Si tienes la web en tu propio servidor puedes obtener algun certificado gratis (buscando por ahi seguro que encontraras alguna web que lo haga) e instalartelo en tu propio servidor. Puedes buscar mas informacion acerca de todo esto.

Ahora lo otro: planteate usar indices para las busquedas y olvidar los textos. Si aun asi quieres seguir usando textos en teoria comprovando lo basico no tendría que saltarte ningun error, y ademas son las mismas comprovaciones que tendrias que hacer si usaras indices.

Replantea tu sistema: evita las comparaciones contra texto entrado manualmente:

Código PHP:
Ver original
  1. if ($selectapar != "Todos los artículos" or "niños" etc...

Esto no vale, es decir que funciona pero mejor no lo hagas. Usa un array o mejor usa una nueva tabla donde tengas definidos los tipos, cada tipo con un indice y una descripcion. Luego implementas una funcion que determine si el tipo solicitado existe en la lista.

Si te da un error de mysql es que no has validado correctamente los valores de retorno. En cualquier consulta SELECT debes esperar que retorne 2 tipos de dato: o un result o un boleano falso:

Código PHP:
Ver original
  1. //construyes la query con los datos escapados
  2. $selectapar = $mysqli->real_escape_string($selectapar);
  3. $query = sprintf("SELECT * FROM tabla WHERE selectapar=\"%s\"", $selectapar);
  4.  
  5. //ejecutas y evaluas la consulta
  6. if(($result = $mysqli->query($query)) === FALSE) {
  7.     //se produjo un error
  8. }
  9. else {
  10.     while($fila = $result->fetch_array(MYSQLI_ASSOC)) {
  11.         //volcado de datos
  12.     }
  13.     $result->free();
  14. }

Saludos
vosk