
Problema variable búsqueda PHP/MySQL
Publicado por Alvaro (9 intervenciones) el 22/03/2016 13:16:16
Buenos días,
Tengo un problema al insertar variables en una búsqueda de PHP/MySQL, seguro que por total desconocimiento. Si meto los valores del SELECT en la búsqueda como fijos, me realiza bien la búsqueda, si los meto como variables (de un formulario previo) me sale la búsqueda vacía. He probado meterla de todas las maneras posible pero me es imposible.
Formulario:
Si meto valores fijos sí me sale como quiero:
En resumidas cuentas, es como si la variable no asignase ese valor dado dentro de la búsqueda.
Si alguien me pudiera echar una mano le estaría muy agradecido.
Un saludo.
Tengo un problema al insertar variables en una búsqueda de PHP/MySQL, seguro que por total desconocimiento. Si meto los valores del SELECT en la búsqueda como fijos, me realiza bien la búsqueda, si los meto como variables (de un formulario previo) me sale la búsqueda vacía. He probado meterla de todas las maneras posible pero me es imposible.
Formulario:
1
2
3
4
5
6
7
8
9
10
11
<html>
<form action="3.php" method="post">
Informe comparativo trabajos totales por campo:<br />
<select name="campo3">
<option value="custom1">Ciudad</option>
<option value="custom2">Zona</option>
<option value="custom3">Prioridad</option>
</select>
<INPUT TYPE="SUBMIT">
</form>
</html>
Si meto valores fijos sí me sale como quiero:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<?php
// Conectando, seleccionando la base de datos
$link = mysql_connect('localhost', 'root', 'xxx')
or die('No se pudo conectar: ' . mysql_error());
echo 'Connected successfully';
mysql_select_db('papercutmf') or die('No se pudo seleccionar la base de datos');
//Recuperando las variables del formulario
$campo1 = $_POST["campo1"];
echo $campo1;
// Realizar una consulta MySQL
$query = 'SELECT custom1 FROM 'tabla1';
$result = mysql_query($query) or die('Consulta fallida: ' . mysql_error());
//Imprimir resultado en array
function toArray($result)
{
while ($fila = mysql_fetch_array($result, MYSQL_ASSOC))
{
$registros[] = $fila;
}
return $registros;
}
$vector = toArray($result);
echo "<pre>";
print_r($vector);
echo "</pre>";
?>
Si meto los datos como variable:
<?php
// Conectando, seleccionando la base de datos
$link = mysql_connect('localhost', 'root', 'xxx')
or die('No se pudo conectar: ' . mysql_error());
echo 'Connected successfully';
mysql_select_db('papercutmf') or die('No se pudo seleccionar la base de datos');
//Recuperando las variables del formulario
$campo1 = $_POST["campo1"];
echo $campo1;
// Realizar una consulta MySQL
$query = 'SELECT "'.$campo1.'" FROM 'tabla1';
$result = mysql_query($query) or die('Consulta fallida: ' . mysql_error());
//Imprimir resultado en array
function toArray($result)
{
while ($fila = mysql_fetch_array($result, MYSQL_ASSOC))
{
$registros[] = $fila;
}
return $registros;
}
$vector = toArray($result);
echo "<pre>";
print_r($vector);
echo "</pre>";
?>
En resumidas cuentas, es como si la variable no asignase ese valor dado dentro de la búsqueda.
Si alguien me pudiera echar una mano le estaría muy agradecido.
Un saludo.
Valora esta pregunta


0