Foros del Web » Programando para Internet » PHP »

Problema con header location y alguna cosa mas

Estas en el tema de Problema con header location y alguna cosa mas en el foro de PHP en Foros del Web. Hola, ante todo presentarme, soy lara y he comenzado hace un par de semanas con PHP y mysql, asi que soy novatilla, os comento mi ...
  #1 (permalink)  
Antiguo 31/01/2011, 14:02
 
Fecha de Ingreso: enero-2011
Mensajes: 2
Antigüedad: 13 años, 10 meses
Puntos: 0
Sonrisa Problema con header location y alguna cosa mas

Hola,
ante todo presentarme, soy lara y he comenzado hace un par de semanas con PHP y mysql, asi que soy novatilla, os comento mi problema.

He creado una base de datos con phpmyadmin y una página web con php, el primer problema lo encuentro cuando intento insertar datos, el header location no me direcciona donde le indico, sino que me muestra una página en blanco.

Os pongo mi código.

Cita:
conectarse.php

<html>
<head>
<title>Conexion BD</title>
<link rel="STYLESHEET" type="text/css" href="estilo.css">
</head>
<body>

<img src="imagenes/logo_baja_negro.jpg" width="120" height="80" border="0" alt="" align="top">
<?php

function conectarse()
{
if(!($link=mysql_connect("127.0.0.1","root",""))) <!-- conexion base de datos equipo,usuario,password -->
{
echo "Error conectando a la base de datos.";
exit();
}
if(!mysql_select_db("it_support",$link)) <!-- Nombre base de datos -->
{
echo "Error conectando a la base de datos.";
exit();
}
return $link;
}
conectarse();
echo "Conexion a la base de datos conseguida";
?>


</body>

</html>
[
Cita:
B]agregar.php[/B]

<?php
error_reporting(E_ALL);
echo phpinfo(display_errors);
include("conectarse.php");
$link=conectarse.php();
$incidencia=$_GET['incidencia'];
$solucion=$_GET['solucion'];
$calendario=$_GET['calendario'];
$turno=$_GET['turno'];
$incidencias=$_GET['incidencias'];
$sql="INSERT INTO cambio_turno
(incidencia,sol_problema,fecha,coment_t,turno)" "VALUES
('$incidencia','$solucion','$calendario','$inciden cias','$turno')"
$query=mysql_query($Sql,$link);
header("Location: cambioturno.php");?>
Cita:
cambioturno.php

<html>
<head>
<title>Cambio turno</title>
<link rel="STYLESHEET" type="text/css" href="estilo.css">
<script language="javascript" type="text/javascript" src="imagenes/datetimepicker.js"></script>
</head>
<body >

<img src="imagenes/logo_baja_negro.jpg" width="120" height="80" border="0" alt="" align="top">


<font color=red><dt><br><b>Se debe enviar 5 minutoa antes de la finalizacion del turno </font></dt></br></b>
<b>Debe tener el siguiente formato</b>
<UL TYPE=SQUARE>
<LI />Pais
<LI />Problema
<LI />duracion
<LI />He hablado con:
<LI />Explicacion de lo que ha ocurrido y como se ha solucionado
</UL>
<center><br><b>Selecciona las opciones correspondientes</center></br></b>
<P>Se ha detectado alguna incidencia?</p>
<FORM METHOD="POST" ACTION="agregar.php" >
<p>Si</p><input name="incidencia" type="radio" value="Si">
<p>No</p><input name="incidencia" type="radio" value="No">
<P>Las incidencias del dia de hoy han sido las siguientes
<p>Se ha solucionado el problema?</p>
<P>Si <INPUT NAME="solucion" TYPE="RADIO" VALUE="solucionado">
<P>No <INPUT NAME="solucion" TYPE="RADIO" VALUE="no solucionado">

<p>Fecha</p>

<input NAME="calendario" id="demo1" type="text" size="25">
<a href="javascript:NewCal('demo1','ddmmyyyy')">
<img src="imagenes/cal.gif" width="16" height="16" border="0" alt="Pick a date"></a>
<p>Selecciona tu turno</p>

<select name="Turno">
+ "<option>Manana</option>"
+ "<option>Tarde</option>"
+ "<option>Noche</option>"</select>


<br><textarea name="Incidencias" rows="15" cols="80"></textarea></br>

<input type="submit" name="guardar" value="Guardar" action="conectarse.php"/>

</form>

<?php
include("conectarse.php");
$link=conectarse();
$result=mysql_query("select * from cambio_turno",$link);
?>

<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR>
<TD>&nbsp;incidencia</TD>
<TD>&nbsp;solucionado problema&nbsp;</TD>
<TD>&nbsp;fecha&nbsp;</TD>
<TD>&nbsp;comentarios&nbsp;</TD>
<TD>&nbsp;turno&nbsp;</TD>
</tr>
<?php
while($row=mysql_fetch_array($result))
{
printf("<tr><td>&nbsp;%s</td><td>&nbsp;%s&nbsp;</td><td>&nbsp;%s&nbsp;</td><td>&nbsp;%s&nbsp;</td><td>&nbsp;%s&nbsp;</td></tr>",$row["incidencia"],$row["sol_problema"],$row["fecha"],$row["coment_t"],$row["turno"]);
}
mysql_free_result($result);
?>
</table>

</body>

</html>
Necesito enviar lo que el usuario a seleccionado en cambio turno a la base de datos, cuando pulso en el formulario "guardar" se me queda pantalla en blanco, en la url veo que se queda en agregar.php

He probado un monton de cosas que he leído por foros, ruta completa, eliminar espacios, exit y die al final....
No entiendo porque no realiza la redirección.

Creo que tampoco inserta los datos en la BD, poruqe cuando lanzo una consulta despues de insertar datos phpmyadmin me muestra el siguiente error " MySQL ha devuelto un valor vacío (i.e., cero columnas). "
¿Como puedo saber si realmente se realiza la conexión? los echo que tengo en conectarse.php no los muestra por ningún sitio

¿Como puedo saber si realmente me inserta los datos?

¿Cual es el problema con header:location?

Muchas gracias por vuestro tiempo.

Un saludo
  #2 (permalink)  
Antiguo 31/01/2011, 14:03
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Problema con header location y alguna cosa mas

Cita:
¿Cual es el problema con header:location?
Bueno, no es un problema de la base de datos ni MySQL, sino de PHP.
Espera que te pasen a ese foro.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 31/01/2011, 16:13
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 10 meses
Puntos: 96
Respuesta: Problema con header location y alguna cosa mas

Saludos

No pueden haber salidas HTML ni echo antes del header location. Noto estas dos lineas por ejemplo:

Código PHP:
Ver original
  1. echo phpinfo(display_errors);
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #4 (permalink)  
Antiguo 31/01/2011, 18:19
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Tema movido desde Mysql a PHP
  #5 (permalink)  
Antiguo 31/01/2011, 18:30
Avatar de xalupeao  
Fecha de Ingreso: mayo-2008
Ubicación: Santiago, Chile
Mensajes: 749
Antigüedad: 16 años, 7 meses
Puntos: 12
Respuesta: Problema con header location y alguna cosa mas

dejalo esto asi

Código PHP:
Ver original
  1. <?php
  2. //echo phpinfo(display_errors);
  3. include("conectarse.php");
  4. $link=conectarse();
  5. $incidencia=$_GET['incidencia'];
  6. $solucion=$_GET['solucion'];
  7. $calendario=$_GET['calendario'];
  8. $turno=$_GET['turno'];
  9. $incidencias=$_GET['incidencias'];
  10. $sql="INSERT INTO cambio_turno (incidencia,sol_problema,fecha,coment_t,turno) VALUES ('$incidencia','$solucion','$calendario','$incidencias','$turno')";
  11. $query=mysql_query($sql,$link);
  12. header("Location: cambioturno.php");
  13. ?>

tambien te recomiendo que leas esto http://php.net/manual/es/function.my...ape-string.php

para que agregues un poco de seguridad a tus consultas sql.

saludos y bienvenida a forosdelweb.com
__________________
Hosting en Chile en Silverhost - La solución en Hosting en Chile.
  #6 (permalink)  
Antiguo 01/02/2011, 08:18
 
Fecha de Ingreso: enero-2011
Mensajes: 2
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: Problema con header location y alguna cosa mas

Hola,
muchas gracias por las respuestas, de verdad, he comentado la línea y sigo con el mismo problema, las dos primeras líneas yo no las había incluido, las puse al leer por foros que podían ayudarme a solucionarlo.

¿Alguna idea mas?



Cita:
Iniciado por xalupeao Ver Mensaje
dejalo esto asi

Código PHP:
Ver original
  1. <?php
  2. //echo phpinfo(display_errors);
  3. include("conectarse.php");
  4. $link=conectarse();
  5. $incidencia=$_GET['incidencia'];
  6. $solucion=$_GET['solucion'];
  7. $calendario=$_GET['calendario'];
  8. $turno=$_GET['turno'];
  9. $incidencias=$_GET['incidencias'];
  10. $sql="INSERT INTO cambio_turno (incidencia,sol_problema,fecha,coment_t,turno) VALUES ('$incidencia','$solucion','$calendario','$incidencias','$turno')";
  11. $query=mysql_query($sql,$link);
  12. header("Location: cambioturno.php");
  13. ?>

tambien te recomiendo que leas esto [url]http://php.net/manual/es/function.mysql-real-escape-string.php[/url]

para que agregues un poco de seguridad a tus consultas sql.

saludos y bienvenida a forosdelweb.com

Etiquetas: header:location, insertar, mysql, phpmyadmin
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:30.