fer_gaturro
Usuario Novato
Usuario Novato

Hola! soy un usuario de mi@ y estaba hacendo una pagina utilizando INSERT INTO y no puedo ver en que me equivoco. Resulta que es un formulario donde uno ingresa un articulo y se actualiza la base de datos. Es bastante simple. El problema es que uno ingresa los datos al formulario y estos no se agregan a la base de datos. La pagina para los que quieran ver es: https://saracatunga.webcindario.com/saracatunga/SQL/agregar%20registro/agregar.php
Este es el codigo:

agregar.php:

<html>
<head>
<title>Agregar registro</title>
</head>
<body>
<H1>Agregar registro a Articulos</H1>
<FORM ACTION="procesar.phtml" METHOD="POST">
<TABLE>
<TR>
<TD>Nombre:</TD>
<TD><INPUT TYPE="text" NAME="nombre" SIZE="30" MAXLENGTH="30"></TD>
</TR>
<TR>
<TD>Precio(en pesos):</TD>
<TD><INPUT TYPE="text" NAME="precio" SIZE="20" MAXLENGTH="6"></TD>
</TR>
<TR>
<TD>Descripción:</TD>
<TD><textarea name="descripcion" cols="50" rows="10"></textarea></TD>
</TR>
<TR>
<TD>Cantidad:</TD>
<TD><INPUT TYPE="text" NAME="cantidad" SIZE="10" MAXLENGTH="10"></TD>
</TR>
<TR>
<TD>Foto:</TD>
<TD><INPUT TYPE="text" NAME="foto" SIZE="15" MAXLENGTH="20"></TD>
</TR>
</TABLE>

<INPUT TYPE="submit" VALUE="Grabar">
</FORM>

<hr>
<?php
include("coneccion.inc&quotGiño;
$conecion= mysql_connect($host, $usuario, $password);

mysql_select_db(saracatunga, $conecion);

$result = mysql_query("SELECT * FROM articulos",$conecion);
echo "Numero de articulos en la base de datos:". mysql_num_rows($result);

?>
<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR><TD>&nbsp;<B>Nombre</B></TD> <TD>&nbsp;<B>Precio</B>&nbsp;</TD> <TD>&nbsp;<B>Descripcion</B>&nbsp;</TD> <TD>&nbsp;<B>Cantidad</B>&nbsp;</TD> <TD>&nbsp;<B>Foto</B>&nbsp;</TD></TR>
<?php

while($row = mysql_fetch_array($result)) {

printf("<tr> <td>%s</td> <td>%s</td> <td>%s</td> <td>%s</td> <td>%s</td> </tr>",
$row["nombre"], $row["precio"], $row["descripcion"], $row["cantidad"], $row["foto"]);

}

mysql_close($conecion);

?>
</table>

<? echo date ("l dS of F Y h:i:s A&quotGiño;?>
</body>
</html>


y este es el de procesa.phtml

<?php
include("coneccion.inc&quotGiño;
$conecion= mysql_connect($host, $usuario, $password);

$nombre=$_POST['nombre'];
$precio=$_POST['precio'];
$descripcion=$_POST['descripcion'];
$cantidad=$_POST['cantidad'];
$foto=$_POST['foto'];

mysql_query("insert into articulos ( nombre, precio, descripcion, cantidad, foto)
values ($nombre, $precio, $descripcion, $cantidad, $foto)",$coneccion);

mysql_close($conecion);
header("Location: agregar.php&quotGiño;
?>


la verdad que nose que puede ser, no tengo ni idea. Encima no me tira ningun error solo no se ingresa. Creo que hay un problema con el POST pero nose como solucionarlo.
Por favor help !!! LloricaLloricaHeladoLlorica

Avatar Image
User 390661
@man / @woman
@man / @woman

quizá sea porque te faltó el mysql_select_db en el archivo que procesa los datos
¿Tu host soporta la extension phtml?loco

fer_gaturro
Usuario Novato
Usuario Novato

agrege en procesa e comando mysql_select_db para elegir la base de datos pero hace lo mismo.. no se soluciono..
con respecto a si el host soporta phtml, no tengo ni idea. Es el espacio de mi@, hice un ejemplo con POST utilizando un archivo phtml y anda bien, supongo que lo soportara.
utilizo el phtml porque estaba asi en el ejemplo, si alguien sabe como cambiarlo lo cambio

pero igual no se arregla eso LloricaLloricaLloricaLlorica

Avatar Image
@man / @woman
@man / @woman
Escrito originalmente por fer_gaturro
agrege en procesa e comando mysql_select_db para elegir la base de datos pero hace lo mismo.. no se soluciono..
con respecto a si el host soporta phtml, no tengo ni idea. Es el espacio de mi@, hice un ejemplo con POST utilizando un archivo phtml y anda bien, supongo que lo soportara.
utilizo el phtml porque estaba asi en el ejemplo, si alguien sabe como cambiarlo lo cambio

pero igual no se arregla eso :8}:8}:8}:8}
Te complicas la vida, usa esto:

<?
if($enviar) {
include("config.php") ;
$fecha = time() - 25200 ;
mysql_query("insert into TUTABLA (CAMPO1,CAMPO2,CAMPO3,CAMPO4,CAMPO5) values ('$CAMPO1','$CAMPO2','$CAMPO3','$CAMPO4','$CAMPO5')") ;
echo "Información Agregada" ;
}
else {
?>
<form method="post" action="formulario.php">
Campo1: <input type="text" name="campo1">
Campo2: <input type="text" name="campo2">
Campo3: <input type="text" name="campo3">
Campo4: <input type="text" name="campo4">
Campo5: <input type="text" name="campo5">
</form>
<?
}
?>

Asi se usa
fer_gaturro
Usuario Novato
Usuario Novato

bueno probe lo que me dijo MaIcO, muchas gracias! asi se entiende mejor el codigo. El problema es que ahora no tira ningun error y tampoco lo agrega. Me fije si tenia algun problema la consulta, la puse en PHPMyAdmin y agrega la fila ... Estuve toda la noche viendo que podia ser y ni idea.. POR FAVOR ALGUIEN QUE ME AYUDE LloricaLlorica

el link: https://saracatunga.webcindario.com/saracatunga/SQL/agregar%20registro/agregar%20con%20IF/agregar1.php

aca esta en nuevo script:

<html>
<head>
<title>Agregar un artculo al registro</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>

<?
if ($envia){

include("coneccion.inc&quotGiño;
$conecion= mysql_connect($host, $usuario, $password);

mysql_select_db(saracatunga, $conecion);

$ingreso=mysql_query("INSERT INTO articulos VALUES ($nombre, $precio, $descripcion, $cantidad, $foto)", $conecion);

mysql_close($conecion);

}else{
?>

<H2>Agregar registro a Articulos</H2>
<FORM method="post" ACTION="agregar1.php">
<TABLE>
<TR>
<TD>Nombre:</TD>
<TD><INPUT TYPE="text" NAME="nombre" SIZE="30" MAXLENGTH="30"></TD>
</TR>
<TR>
<TD>Precio(en pesos):</TD>
<TD><INPUT TYPE="text" NAME="precio" SIZE="20" MAXLENGTH="6"></TD>
</TR>
<TR>
<TD>Descripción:</TD>
<TD><INPUT TYPE="text" NAME="descripcion" SIZE="50" MAXLENGTH="50"></TD>
</TR>
<TR>
<TD>Cantidad:</TD>
<TD><INPUT TYPE="text" NAME="cantidad" SIZE="10" MAXLENGTH="10"></TD>
</TR>
<TR>
<TD>Foto:</TD>
<TD><INPUT TYPE="text" NAME="foto" SIZE="15" MAXLENGTH="20"></TD>
</TR>
</TABLE>

<INPUT TYPE="submit" VALUE="Grabar" name="envia">

<?
}

?>
<hr>
<?php
include("coneccion.inc&quotGiño;
$conecion= mysql_connect($host, $usuario, $password);

mysql_select_db(saracatunga, $conecion);

$result = mysql_query("SELECT * FROM articulos",$conecion);
echo "Numero de articulos en la base de datos:". mysql_num_rows($result);

?>
<TABLE BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR><TD>&nbsp;<B>Nombre</B></TD> <TD>&nbsp;<B>Precio</B>&nbsp;</TD> <TD>&nbsp;<B>Descripcion</B>&nbsp;</TD> <TD>&nbsp;<B>Cantidad</B>&nbsp;</TD> <TD>&nbsp;<B>Foto</B>&nbsp;</TD></TR>
<?php

while($row = mysql_fetch_array($result)) {

printf("<tr> <td>%s</td> <td>%s</td> <td>%s</td> <td>%s</td> <td>%s</td> </tr>",
$row["nombre"], $row["precio"], $row["descripcion"], $row["cantidad"], $row["foto"]);

}

mysql_close($conecion);

?>
</table>
<hr>

<? echo date ("l dS of F Y h:i:s A&quotGiño;?>
</body>
</html>



LloricaLlorica

Avatar Image
@man / @woman
@man / @woman

Estas seguro que en el servidor donde estas soporta php? agregaste la tabla? usaste el config.php?

fer_gaturro
Usuario Novato
Usuario Novato

que soporta php y que existe la tabla 'articulos' estoy seguro.
Estoy usando el espaciode Mi@ asique soporta php y la tabla, si esta creada...
conrepecto a config.php , te referis al archivo que dice la el host, nombre de usuario y contraseña para conectarse a db ? yo lo llamo 'coneccion.inc' y si esta...

sigo lamentandome !!
HeladoHeladoHelado

fer_gaturro
Usuario Novato
Usuario Novato

puede ser que haya alguna 'traba' o alguna configuración que solo pueda leer la db y no modificarla? porque estoy utilizando solo la parte del script que agrega un registro y ni me tira error ni nada. Supuestamente la agrega pero me fijo y la db sige igual.
utilizo este script :

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?
$nombre="torta";
$precio="6";
$descripcion="rica";
$cantidad="5";
$foto="torta.jpg";

include("coneccion.inc&quotGiño;
$conecion= mysql_connect($host, $usuario, $password);

mysql_select_db(saracatunga, $conecion);

mysql_query("INSERT INTO articulos VALUES ($nombre, $precio, $descripcion, $cantidad, $foto)", $conecion);

mysql_close($conecion);
?>
</body>
</html>



HeladoHelado

Avatar Image
User 390661
@man / @woman
@man / @woman

Creo que la consulta es
INSERT INTO tabla(campo1,campo2,campo3,campo4)VALUES('$variable1','$variable2','$variable3','$variable4')

Avatar Image
@man / @woman
@man / @woman
Escrito originalmente por fer_gaturro
que soporta php y que existe la tabla 'articulos' estoy seguro.
Estoy usando el espaciode Mi@ asique soporta php y la tabla, si esta creada...
conrepecto a config.php , te referis al archivo que dice la el host, nombre de usuario y contraseña para conectarse a db ? yo lo llamo 'coneccion.inc' y si esta...

sigo lamentandome !!
HeladoHeladoHelado
Por que no mejor lo nombras conexion.php (es con x no con cc) y usas esto:

<?
$dbhost = "localhost" ;
$dbuser = "usuario" ;
$dbpass = "contraseña" ;
$db = "tabla" ;
if(!$conectar = @mysql_connect($dbhost,$dbuser,$dbpass)) {
$error = mysql_error() ;
echo "
<p><b>Error</b>
<p>No se pudo conectar a la base de datos debido a:
<p><b>$error</b>
" ;
exit ;
}
mysql_select_db($db,$conectar) ;
?>
Avatar Image
@man / @woman
@man / @woman

La parte de la conexión puede ser mas sencilla... y mejor usando la función die.

@mysql_connect($dbhost,$dbuname,$dbpass) or die('Fallo en la conexión con la base de datos');
// Selección de la base de datos
@mysql_select_db($dbname) or die('Fallo seleccionado la base de datos');

fer_gaturro
Usuario Novato
Usuario Novato
Cita:

Creo que la consulta es INSERT INTO tabla(campo1,campo2,campo3,campo4)VALUES('$variable1','$variable2','$variable3','$variable4')


sobre lo anterior vi en una pagina que se podia usar sin ir declarando cada columna. En la pagina http://www.w3schools.com/sql/sql_insert.asp]http://www.w3schools.com/sql/sql_insert.asp[/url]
lo dice... Asi tambien tiene que andar...




con respecto al conectar, esta muy buenaa tu forma de conectarse NoSetup.org!! muy simple y practica. La cosa es que esto se conecta solo que no lo agrega...

la verdad que nose que ES!! nose que voy a hacerLloricaLlorica
Avatar Image
@man / @woman
@man / @woman

Prueba a ver... seguro que es alguna comilla o algo así...

Haz la setencia sql en una variable e impremela antes, para ver que es correcta.

ATENCIÓN: Este tema no tiene actividad desde hace más de 6 MESES,
te recomendamos abrir un nuevo tema en lugar de responder al actual
Opciones:
Ir al subforo:
Permisos:
TU NO PUEDES Escribir nuevos temas
TU NO PUEDES Responder a los temas
TU NO PUEDES Editar tus propios mensajes
TU NO PUEDES Borrar tus propios mensajes
Temas similares
No se han encontrado temas similares