elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 13:12  


Tema destacado: Suscripción al boletín mensual de elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP
| | | |-+  Crear función para hacer query moldeable
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Crear función para hacer query moldeable  (Leído 1,505 veces)
Servia


Desconectado Desconectado

Mensajes: 317


Ver Perfil
Crear función para hacer query moldeable
« en: 3 Febrero 2011, 21:50 »

Señores, señoras tengo un problema y de nuevo acudo a ustedes ;-)

Me gustaría crear una función que me añada de forma automática los campos a actualizar de un query.
Me explico; tengo estos datos:
-jugador
-email
-vida
-arma

Hay un formulario de edición y quiero que al recibir los datos la función detecte los que no están vacíos y proceda a añadirlos al query posterior.

$campo1=creaquery($_POST['jugador']);
$campo2=creaquery($_POST['email']);
$campo3=creaquery($_POST['vida']);
$campo4=creaquery($_POST['arma']);

$user=$_SESSION['userlogin'];

function creaquery ($campo){
  if($campo!=''){
  $querido=NOMBREDEL CAMPO .'=' . $campo; // formar el jugador=$jugador
  }

}

$query="UPDATE db_game SET $querido WHERE user='$user' ";


Como lo hago?


En línea
Diabliyo


Desconectado Desconectado

Mensajes: 1.270


M.S.I Angel Cantu


Ver Perfil WWW
Re: Crear función para hacer query moldeable
« Respuesta #1 en: 3 Febrero 2011, 21:58 »

function creaquery ($campo){
  if($campo!=''){
  $querido=NOMBREDEL CAMPO .'=' . $campo; // formar el jugador=$jugador
  }

}

No te entiendo muy bien y ademas si lo estas programando tu, dejame decirte que es pesimo la forma como lo estas pensando... En fin, si quieres comprobar si una cadena esta vacia no es necesario hagas esto de !=''.

Basta con:

Código
<?php
$dato= $_POST["campo"];
 
if( !$campo ) echo 'Campo vacio';
else echo 'Campo contiene informacion';
?>

Saludos !


En línea

Servia


Desconectado Desconectado

Mensajes: 317


Ver Perfil
Re: Crear función para hacer query moldeable
« Respuesta #2 en: 3 Febrero 2011, 22:01 »

LOL

Primero, ni que mi código sea malo deberías decir que es pésimo, esta sección es de desarrollo precisamente.
Segundo, parece que no hayas leído lo que he escrito.

Me gustaría crear una función que añada de forma automática los campos a actualizar de un query.


Edito: Por ejemplo, yo no he criticado tus aplicaciones porque no sabías ni que eran las pretty urls.
« Última modificación: 3 Febrero 2011, 22:18 por Servia » En línea
~ Yoya ~
Wiki

Desconectado Desconectado

Mensajes: 954



Ver Perfil
Re: Crear función para hacer query moldeable
« Respuesta #3 en: 3 Febrero 2011, 22:56 »

Código
function creaquery($campo, $user = $_SESSION['userlogin'])
{
if(!empty($campo))
{
$querido="NOMBREDEL CAMPO = ".$campo;
$query = mysql_query("UPDATE db_game SET $querido WHERE user='$user'");
 
                if($query)
                {
                   return TRUE;
                }
       }
 
          return FALSE;
}

La he probado y funciona correctamente. Si todo esta bien devuelve True(1) y si no False(0), por si necesitas comprobar que el campo se haya actualizado correctamente.

Saludos.
En línea

Shell Root


Desconectado Desconectado

Mensajes: 2.456


Alex Jurado


Ver Perfil WWW
Re: Crear función para hacer query moldeable
« Respuesta #4 en: 3 Febrero 2011, 22:57 »

Tampoco entendí muy bien lo que quieres hacer... pero quizás esto te pueda servir...
Código
foreach($_POST as $sNameInput => $sValueInput){
 if( (strlen($sValueInput) > 0) ){ echo "$".$sNameInput." = ".$sValueInput." <br/>"; }
 elseif( ($sValueInput == "") || empty($sValueInput) ){ echo "$".$sNameInput." = <i>null</i> <br/>"; }
}
En línea

---
Servia


Desconectado Desconectado

Mensajes: 317


Ver Perfil
Re: Crear función para hacer query moldeable
« Respuesta #5 en: 3 Febrero 2011, 23:20 »

Perfecto!
Gracias, muchas gracias!
La combinación de ambos códigos genera lo que necesitaba!
Shell Root, había buscado mucho como mostrar el nombre de la var, pues en todos sitios decían que no se podía.

Encontré este que también sirve pero el tuyo es más cómodo.
Código:
function var_name (&$iVar, &$aDefinedVars)
    {
    foreach ($aDefinedVars as $k=>$v)
        $aDefinedVars_0[$k] = $v;
 
    $iVarSave = $iVar;
    $iVar     =!$iVar;
 
    $aDiffKeys = array_keys (array_diff_assoc ($aDefinedVars_0, $aDefinedVars));
    $iVar      = $iVarSave;
 
    return $aDiffKeys[0];
    }
 

Lo dejo añadido, para quién busque en google el tema :P
En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Busco función que espere para hacer un reloj
Programación General
Wargolth 4 910 Último mensaje 8 Noviembre 2008, 20:39
por juancho77
Mod o funcion para hacer graficas en Php
PHP
ohk 1 1,851 Último mensaje 30 Noviembre 2008, 22:10
por Nakp
[php&mysql]crear query sql mediante formularios
Bases de Datos
twoz 3 3,680 Último mensaje 9 Marzo 2009, 06:42
por ^Tifa^
Hacer funcion para redimensionar una matriz multidimensional
Programación C/C++
Melissavir 1 1,376 Último mensaje 16 Octubre 2009, 00:20
por >FedeX<
Crear funcion para el TAP TCola
Programación C/C++
alvareteb 1 190 Último mensaje 27 Enero 2012, 15:38
por alvareteb
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines