Como Agrego al mi funcion select una variable PHP

Tengo la siguiente función y necesito que me tome la variable para el filtro (conectado a mysql ).

En este mi variable es $valorvariable

function select($link, $id = null) {

   //-- $sql = "SELECT * FROM bd_vencimiento ";
       // $sql = "SELECT * FROM bd_vencimiento WHERE `"."TB_Nombre"."` LIKE '%"."e"."%'" ;
        $sql = "SELECT * FROM bd_vencimiento WHERE `"."nombre"."` ='".$valorvariable."'" ;

        // Join con deptos, se hace siempre
   // $sql .= "LEFT JOIN demo_depts on demo_depts.depid = bd_vencimiento.TB_Direccion";
    if ($id)
        $sql .= " WHERE  bd_vencimiento.id = $id";
    if(!$query = mysql_query ( $sql, $link )) die(mysql_error());
    return $query;
}

Muchas Gracias!

La variable la saco de esta consulta:

$query = "SELECT * FROM "."ipconfig"." WHERE `"."iplocal"."` ='"."101.0.0.1"."'" ;
$execute = mysql_query($query);    /* $conexion es la variable de la conexión a la BD */
$valorvariable= "";

//Compruebo si hay algún resultado
if($row = mysql_fetch_array($execute)){
   //Guardo los datos de la BD en las variables de php
 $valorvariable= $row["locales"];

}

1 Respuesta

Respuesta
1

Por deducir en las consultas $sql tienes variables y los has cambiado por strings aquí para mostrar el código, verdad. Tu código parece correcto.

Si haces echo $valorvariable; ¿Te da algo? Es por saber si el error está en el query que saca el valor "locales" u ocurre cuando lo pasas a la función.

La variable $valorvariable=""; está definida antes de la función?

Buen día Dissenyx, Esto es lo raro. Si genero un echo $variable; me trae el dato correctamente; Si agrego ese dato "manualmente" dentro de la función, también me lo toma. El tema es que cuando ejecuto con la variable me sale el siguiente error.

Notice: Undefined variable: var1 in ...en la linea de la funcion select.

Muchas Gracias por responder!

Me olvide de aclararte. Si la $variable esta fuera de la funcion.


Muchas Gracias!

Eso es lo que sospechaba.

El código se ejecuta por líneas y lo más probable es que la función se ejecuta antes de declarar la variable. Por eso te da error undefined.

Intenta mover $valorvariable = ""; antes de llamar la función.

Buen día,

Gracias por contestar.. El tema es que la variable esta fuera de la función. Te paso lo que tengo:

En la fila 20 Cargo la info y en la fila 40 lo quiero utilizaar como filtro.

Muchas Gracias

He recreado el código parcialmente. Te comento lo que tuve que hacer y funciona.

en la funcion select() añadir $variable como parametro. Como mis tablas son diferentes utilice sólo select($variable){...} y después no lo veo en la imagen que colgaste llamas la misma función :

select($variable); // esta línea ejecuta la funcion. En tu caso sería

select ($link,$id=NULL,$variable);

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas