Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/12/2013, 19:26
MeDxEc
 
Fecha de Ingreso: mayo-2013
Ubicación: Cúcuta
Mensajes: 98
Antigüedad: 11 años
Puntos: 2
Pregunta ¿Como puedo solucionar este error en PHP?

Hola, necesito ayuda en dos cositas que me están matando la cabeza. He estado tomando como ejemplo el código del cms que hay en maestros del web (http://www.maestrosdelweb.com/editorial/phpcms1/) y el código es desastrozo. Solo sirve para tener una referencia y eso es lo que he intentado, tomarlo como referencia. Aquí va mi duda:

Tengo este código que en teoría debería funcionar (ya he probado ejecutando el script y no me ha botado mensaje de error)

Código PHP:
<?php 

    
include('../includes/config.php');

    
$result mysql_query('SELECT * FROM noticias ORDER BY fecha DESC 5',$connect);
    
$totalregistros=mysql_num_rows($result);

?>
Luego, más abajo, tengo el siguiente código que en teoría debería mostrar los artículos:


Código PHP:
<header class="wrap-title">
            <div class="container">
                <h1 class="page-title">Inicio</h1>

            </div>
        </header>

        <?php
        
while($row=mysql_fetch_array($result))
        {

        
?>
          
        <div class="container">
            <div class="row">
                <div class="col-md-8">
                    <!-- ENTRADA DEL BLOG -->
                    <article class="post animated fadeInLeft animation-delay-8">
                        <div class="panel panel-default">
                            <div class="panel-body">
                                <?php echo '<h3 class="post-title">' .$row['titulo']. '</h3>' ?>
                                <div class="row">
                                    <div class="col-lg-6">
                                        <img src="img/7.jpg" class="img-post img-responsive" alt="Image">
                                    </div>
                                    <div class="col-lg-6">
                                        <?php echo '<p>' .$row['descripcion']. '</p>' ?>    
                                    </div>
                                </div>
                            </div>
                            <div class="panel-footer">
                                <div class="row">
                                    <div class="col-lg-10 col-md-9 col-sm-8">
                                        <?php echo '<i class"fa fa-clock-o">' .$row['fecha']. '</i>' ?> <?php echo '<i class"fa fa-user">' .$row['autor']. '</i>' ?>
                                    </div>
                                    <div class="col-lg-2 col-md-3 col-sm-4">
                                        <a href="#" class="pull-right">Leer más &raquo;</a>

                                    </div>
                                </div>
                            </div>
                        </div>
                    </article> <!-- --> <!-- post -->                     

                    <?php 
                    
}; 

                    
mysql_free_result($result); 

                    
?>
Hasta ahí bien, eso debería traer los datos desde MySQL e imprimir un máximo de 5 entradas en la página ¿no? Pues no, no lo hace y no doy con la solución (cabe resaltar que sí hay datos en la base de datos)

Eso lo primero, lo segundo es porqué este código no escribe en la base de datos (arriba dije que sí tenía datos pero no los ingrese por este script, los ingresé directamente desde PHPMyAdmin) Este es mi codigo:

Primero, el formulario que manda la info:
Código HTML:
 <form action="procesar_noticia.php" method="post">
                        <label for="titulo">Titulo</label><br>
                        <input type="text" id="titulo" name="titulo" class="form-control"><br>

                        <label for="autor">Autor</label><br>
                        <input type="text" id="autor" name="autor" class="form-control"><br>

                        <label for="descripcion">Descripción</label><br>
                        <input type="text" id="descripcion" name="descripcion" class="form-control"><br>

                        <label for="keywords">Keywords</label><br>
                        <input type="text" id="keywords" name="keywords" class="form-control"><br>

                        <label for="noticia">Noticia</label><br>
                        <textarea name="articulo" id="noticia" cols="50" rows="10" class="form-control"></textarea><br>

                        <input type="submit" class="btn btn-success pull-right" value="Enviar">
                    </form> 
Y esta es la página "procesar_noticia.php"
Código PHP:
<?php

include('../includes/config.php');

$titulo=$_POST['titulo'];
$autor=$_POST['autor'];
$categoria=$_POST['categoria'];
$descripcion=$_POST['descripcion'];
$articulo=$_POST['articulo'];
$keywords=$_POST['keywords'];

mysql_query('INSERT INTO noticias(titulo,autor,descripcion,categoria,keywords,articulo,fecha) values('$titulo','$autor','$descripcion','$categoria','$keywords','$articulo',NOW()',$connect);
header("location: index.php");
?>
Algo que me parece curioso (y que no sé porque sucede) es que cuando ejecuto le doy al submit este parece como si procesara los datos pero no los guarda en la base de datos y no redirige a "index.php" como debería hacerlo. Se queda en "localhost/procesar_noticia", con la página en blanco cabe resaltar

Agradecería cualquier ayuda que me pudiesen dar :(