Buenos días,
en primer lugar decir que estoy aprendiendo el manejo de javascript y jquery. Tengo un problema a la hora de insertar un registro en una tabla mysql, pero esxplico bien los pasos para que podáis ayudarme mejor:
1-esta es la página principal "noticias.php" que se carga en un div especifico al pulsar un boton:
Código:
<div id="seccion_titulo">Noticias</div>
<div class="listado_titulo">Listado de Noticias</div>
<div class="listado_noticias">
<div class="listado completo">
<table class="tabla_noticias">
<tr>
<td style="width:50px">Id</td>
<td style="width:200px">Titulo</td>
<td style="width:200px">Pie noticia</td>
<td style="width:150px">Pie foto</td>
<td style="width:80px">Fecha</td>
<td style="width:80px">Hora</td>
<td style="width:80px">Autor</td>
<td style="width:80px"></td>
</tr>
<?php
header('Content-Type: text/html; charset=ISO-8859-1');
require_once "conexion.php";
$query="SELECT * FROM noticias order by id_noticia DESC";
$result=$con->query($query);
while($row=mysqli_fetch_array($result)){
$id_noticia=$row['id_noticia'];
$titulo=$row['titulo'];
$pie_noticia=$row['pie_noticia'];
$descripcion=$row['descripcion'];
$pie_foto=$row['pie_foto'];
$fecha=$row['fecha'];
$hora=$row['hora'];
$autor=$row['autor'];
setlocale(LC_ALL,"es_ES@euro","es_ES","esp");
$fecha_final = strftime("%d/%m/%Y", strtotime("$fecha"));
?>
<tr>
<td><?php echo $id_noticia;?></td>
<td><?php echo $titulo;?></td>
<td><?php echo $pie_noticia;?></td>
<td><?php echo $pie_foto;?></td>
<td><?php echo $fecha_final;?></td>
<td><?php echo $hora;?></td>
<td><?php echo $autor;?></td>
<td><a class="Editar" onclick="editar_noticia('<?php echo $id_noticia;?>')">Editar</a></td>
</tr>
<?php };?>
</table>
</div>
</div>
<div class="botones_acciones">
<a onclick="nueva_noticia()"><input type="button" value="Nueva Noticia" style="width:190px"></a>
</div>
<div class="noticia_seleccionada">
</div>
2-Al pulsar en Nueva Noticia, se ejecuta este código javascript
:
Código:
function nueva_noticia(){
$(".noticia_seleccionada").load("Nueva_noticia.php");
}
3-se carga el contenido de "Nueva_noticia.php" en el div correspondiente. Su código es este:
Código:
<form method="post" id="nueva_noticia" action="Accion_noticias.php">
<div class="columna">
<div class="texto">Título:</div>
<div class="texto">Pie de Noticia:</div>
<div class="texto">Descripción:</div>
</div>
<div class="columna2">
<div class="text"><input type="text" name="titulo" style="width:300px" value=""></div>
<div class="text"><input type="text" name="pie_noticia" style="width:300px" value=""></div>
<div class="areatext"><textarea name="descripcion" style="width:300px;height:170px"></textarea></div>
</div>
<div class="columna">
<div class="texto">Autor:</div>
<div class="texto">Pie de Foto:</div>
<div class="texto">Foto:</div>
</div>
<div class="columna2">
<div class="text"><input type="text" name="autor" style="width:150px" value=""></div>
<div class="text"><input type="text" name="pie_foto" style="width:300px" value=""></div>
<div class="imagen"><div class="foto"></div><input type="file" name="foto" value="Editar foto" /></div>
</div>
<div class="botones_noticia">
<br><br><input type="submit" name="insertar" id="insertar" value="Guardar Noticia" style="width:190px">
<input type="button" value="Cancelar Cambios" style="width:190px">
<input type="button" value="Reset" style="width:190px"><hr>
<input type="button" value="Publicar Facebook" style="width:190px">
<input type="button" value="Publicar Twitter" style="width:190px">
</div>
</form>
4-Se introducen los datos y al pulsar guardar noticia se ejecuta "Accion_noticias.php", cuyo codigo es este:
Código:
if (isset($_POST['insertar'])){
$titulo = $_POST['titulo'];
$pie_noticia = $_POST['pie_noticia'];
$descripcion = $_POST['descripcion'];
$autor = $_POST['autor'];
$pie_foto = $_POST['pie_foto'];
$fecha = date("Y/m/d");
$hora = date("H:i:s");
require_once 'conexion.php';
$query = "INSERT INTO noticias (titulo, pie_noticia, descripcion, pie_foto, autor, fecha, hora)
VALUES('$titulo','$pie_noticia','$descripcion','$pie_foto','$autor', '$fecha', '$hora')";
mysqli_query($con,$query);
echo "<script>
alert('La noticia ha sido introducida con éxito.');
window.location.href='index.html'
</script>";
}
PROBLEMA: todo me carga bien, incluso me sale el mensaje de guardado con éxito, pero realmente no me introduce nada en la BD. Alguien podría decirme u orientarme sobre qué estoy haciendo mal??
Muchas gracias por anticipado y un saludo