Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Ayuda con BD y PHP

Estas en el tema de Ayuda con BD y PHP en el foro de Mysql en Foros del Web. hola bueno me gustaria que me ayudaron porfavor a buscar este problema. bueno quiero crear un blog, pero no por wordpress ni nada de eso ...
  #1 (permalink)  
Antiguo 31/08/2010, 19:10
Avatar de geeck22  
Fecha de Ingreso: agosto-2010
Ubicación: Tijuana B.C.
Mensajes: 79
Antigüedad: 13 años, 8 meses
Puntos: 7
Ayuda con BD y PHP

hola bueno me gustaria que me ayudaron porfavor a buscar este problema.
bueno quiero crear un blog, pero no por wordpress ni nada de eso y hasta ahora lo logre, pero para agregar post, tengo que ir directamente a phpmyadmin para crearlo, estube investigando y encontre un sript para ingresar informacion a la bd,
lo modifique y todo a mis preferencias pero me pasa un problema, que en la casilla titulo solo me deja escribir numeros y en la fecha igual [SOLO NUMEROS].

aqui estan los codigos, haver si pueden ver el error porque yo no

BD tabla...
Código MySQL:
Ver original
  1. create table posts(
  2.   titulo  varchar(50),
  3.   post varchar(50),
  4.   autor varchar(50),
  5.   fecha varchar(50));
  6.  
  7.  
  8.  
  9. insert into posts values('titulo','post','autor','fecha 31/08/10');

formulario de registro a la BD:
Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  4. <title>Actualizar Blog</title>
  5. </head>
  6.  
  7. <body bgcolor="#FFFACD">
  8.     <center>
  9.         <h2>Entrada de Post's</h3>
  10.         <form name="frmHospital" action="Ejercicio5.php" method="POST" target="inferior">
  11.             Titulo: <input type="text" name="titulo" /><br />
  12.             Post: <input type="text" name="post" /><br />
  13.             Autor: <input type="text" name="autor" /><br />
  14.             Fecha: <input type="text" name="fecha" /><br /><br />
  15.             <input type="submit" name="insertar" value="Insertar Post" />
  16.             <input type="reset" name="resetear" value="Cancelar entrada" /><br />
  17.             <input type="submit" name="visualizar" value="Listar Post's" />
  18.         </form>
  19.     </center>
  20. </body>
  21. </html>

y el script php:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Post's</title>
</head>

<body>
    <center>
        <?php
            
if($_POST) {
                
$titulo=$_POST["titulo"];
                
$post=$_POST["post"];
                
$autor=$_POST["autor"];
                
$fecha=$_POST["fecha"];
                
$accion=$_POST["accion"];
                
                
$conexion=mysql_connect("mysql4.000webhost.com""a4417516_""contraseña") or die("No se pudo conectar con el servidor");
                
mysql_select_db("a4417516_"$conexion) or die("No se pudo conectar con la base de datos");
                
                if(
$_POST['insertar']) {
                        
$result=mysql_query("INSERT INTO posts VALUES (".$titulo.", '".$post."', '".$autor."' , ".$fecha.")"$conexion);
                        if(
$result) {
                            echo 
"REGISTRO INSERTADO!";
                        } else {
                            
$numErr=mysql_errno($conexion);
                            
$descErr=mysql_error($conexion);
                            echo 
"No se pudo insertar el registro<br />";
                            echo 
"Nº de error: ".$numErr." * Descipción: ".$decErr;
                        }
                } else if(
$_POST['visualizar']) {
                        
$result=mysql_query("SELECT * FROM posts"$conexion);
                        if(
$result) {
                            
?>
                            <h1>LISTADO DE Post's</h1>
                            <hr />
                            <h2>Número de Post's: <?php    $num=mysql_num_rows($result); echo $num?></h2>
                            <table border="1">
                                <tr>
                                    <td>Titulo</td>
                                    <td>Post</td>
                                    <td>Autor</td>
                                    <td>fecha</td>
                                </tr>
                            <?php
                            
while($fila=mysql_fetch_array($result)) {
                                echo 
"<tr>";
                                    echo 
"<td>".$fila[titulo]."</td>";
                                    echo 
"<td>".$fila[post]."</td>";
                                    echo 
"<td>".$fila[autor]."</td>";
                                    echo 
"<td>".$fila[fecha]."</td>";
                                echo 
"</tr>";
                            }
                            
?>
                            </table>
                            <?php
                        
}
                }
                
                
mysql_close($conexion);
            }
        
?>
    </center>
</body>
</html>
Espero que me puedan ayudar, muchas gracias :D

a si, si quieren probar el probarlo les dejo la pagina a donde lo subi:
[URL="http://robertosite.co.cc/123/marcoEjercicio5.htm"]http://robertosite.co.cc/123/marcoEjercicio5.htm[/URL]
  #2 (permalink)  
Antiguo 31/08/2010, 19:49
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Respuesta: Ayuda con BD y PHP

Debes usar comillas simples para los campos de tipo texto, en realidad mysql te permite usarlo para todos. Aqui te dejo el ejemplo con las comillas simples puestas.

Código PHP:

$result
=mysql_query("INSERT INTO posts VALUES ('".$titulo."', '".$post."', '".$autor."' , '".$fecha."')"$conexion); 
  #3 (permalink)  
Antiguo 31/08/2010, 20:04
Avatar de geeck22  
Fecha de Ingreso: agosto-2010
Ubicación: Tijuana B.C.
Mensajes: 79
Antigüedad: 13 años, 8 meses
Puntos: 7
Respuesta: Ayuda con BD y PHP

Cita:
Iniciado por claudiovega Ver Mensaje
Debes usar comillas simples para los campos de tipo texto, en realidad mysql te permite usarlo para todos. Aqui te dejo el ejemplo con las comillas simples puestas.

Código PHP:

$result
=mysql_query("INSERT INTO posts VALUES ('".$titulo."', '".$post."', '".$autor."' , '".$fecha."')"$conexion); 
muchas gracias

jaja perdon soy un novato :A
  #4 (permalink)  
Antiguo 31/08/2010, 20:30
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Respuesta: Ayuda con BD y PHP

No repitas tus mensajes en varios hilos o te van tratar mal.
jeje
  #5 (permalink)  
Antiguo 01/09/2010, 03:35
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Ayuda con BD y PHP

Cita:
Debes usar comillas simples para los campos de tipo texto, en realidad mysql te permite usarlo para todos.
Si, te deja usarlo para todos, pero no es conveniente hacerlo con valores numéricos porque obligas a MySQL a realizar conversiones implícitas que reducen la performance, y tratar valores numéricos como cadenas puede desencadenar errores casi indetectables en los INSERT y UPDATE, o simplemente no devovler datos que sí existen.
En otras palabras: Escribe las sentencias con la mayor corrección posible y pon entre apóstrofes sólo las cadenas de texto y las fechas.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: php, simple
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 04:22.