Buenas, una vez mas vengo a consultar ya que por mas que me rompo la cabeza no entiendo el porque del error
.
Estoy haciendo un ejercicio práctico de un libro de PHP de la PC Users, el cual consiste hacer una agenda con una base de datos de dos tablas(contactos y tipos_contactos).
El problema en si surge con el buscar contactos y el listar contactos.
En un mini menú se encuentra Buscar Tipo Contactos y Listar Tipo Contactos, estos dos links van al archivo ltipos_contactos.php con la diferencia que:
Buscar Tipo contactos: <a href="tipo_contactos/ltipos_contactos.php?tipo=buscar">
Listar Tipo contactos: <a href="tipo_contactos/ltipos_contactos.php">
En ltipos_contactos.php, debería haber un formulario según el caso. Si se entra por el link de "Buscar tipo contactos", debería aparecer una caja de texto y un botón para buscar, para luego de realizar la acción, muestre el listado.
Si se entra por "Listar tipo contactos", debería mostrarse directamente el listado.
Este es el código:
Código PHP:
<?
include ("../inicio.php");
//Listado de Tipo de Contactos
if ($tipo == "buscar")
{
//Armo el formulario de busqueda
?>
<form method="post" action="tipo_contactos/ltipos_contactos.php">
<table border="0" width="100%">
<tr>
<td width="100%" colspan="2" bgcolor="#DBDBDB"><b>Buscar Tipos de Contactos</b></td>
</tr>
<tr>
<td width="30%">
<p align="right">Buscar: </p></td>
<td width="70%"><input type="text" name="buscar" size="32"></td>
</tr>
<tr>
<td width="30%"></td>
<td width="70%"><input type="submit" value="Enviar" name="envio"></td>
</tr>
</table>
</form>
<p> </p>
<?
}
else
{
//Listamos los tipos de contactos
//Armo la conexion con el servidor mysql
$coneccion = mysql_connect($host_db, $usuario_db, $pass_db);
mysql_select_db($bdd, $coneccion);
//Armo la consulta
$sql = "select * from tipo_contactos where desc_tipo_contacto like '%$buscar%' ";
$result = mysql_query($sql, $coneccion);
if (mysql_error())
{
echo "ERROR al agregar el Tipo de Contacto - ".mysql_errno().":".mysql_error()."<br>";
}
//Calculo la cantidad de resultados
$cant_resultados = mysql_num_rows($result);
if($cant_resultados >= 1)
{
//Muestro los resultados
echo "Se han encontrado $cant_resultados resultados<br>";
?>
<table border="1" width="100%" cellpadding="4" cellspacing="0">
<tr>
<td width="33%" align="center" bgcolor="#CBDBDB">
<b>Id_tipo_contacto</b></td>
<td width="33%" align="center" bgcolor="#CBDBDB">
<b>Descripción</b></td>
<td width="34%" align="center" bgcolor="#CBDBDB"> </td>
</tr>
</table>
<?
while($myrow = mysql_fetch_array($result))
{
//Armo link para editar
$leditar =
"etipos_contactos.php?id_tipo_contacto=$myrow[id_tipo_contacto]";
$lborrar =
"btipos_contactos.php?id_tipo_contacto=$myrow[id_tipo_contacto]";
?>
<table border="1" width="100%" cellpadding="4" cellspacing="0">
<tr>
<td width="33%" align="center"> <? echo $myrow[id_tipo_contacto]; ?></td>
<td width="33%" align="center"> <? echo $myrow[desc_tipo_contacto];?></td>
<td width="34%" align="center">
<p style="margin-top: 3; margin-bottom: 3"><a href="<? echo $leditar; ?>">Editar</a></p>
<p style="margin-top: 3; margin-bottom: 3"><a href="<? echo $lborrar; ?>">Borrar</a></p></td>
</tr>
</table>
<?
}//end while
}
else
{
echo "No se han encontrado resultados coincidentes<br>";
}
}
include ("../pie.php">;
?>
1º Problema: Cuando cargo la página, me sale este error:
Parse error: parse error, unexpected ';' in c:\foxserv\www\agenda\tipo_contactos\ltipos_contac tos.php on line 93
Quite o no quite ese ";" es lo mismo, el error sigue.
2º Problema:
Ahora, si cierro el tag ?> antes del include:
Código PHP:
?>
include ("../pie.php">;
Me ejecuta la página pero directamente el listado con los resultados, dejando inutil al primer if y obviamente sin un pie de página.
¿Qué es lo que estoy haciendo mal?
Desde ya muchas gracias!!
Sino me explique bien, avisen que lo intento de nuevo!