Foros del Web » Programando para Internet » PHP »

no ingresa datos al mysql

Estas en el tema de no ingresa datos al mysql en el foro de PHP en Foros del Web. hola, tengo la base q cree aplicada en mi web, de manera demostrativa, tuve q cambiar el archivo conexion para poder usarla, porque el hosting ...
  #1 (permalink)  
Antiguo 20/05/2009, 21:08
 
Fecha de Ingreso: mayo-2006
Ubicación: Ciudad de Buenos Aires
Mensajes: 78
Antigüedad: 17 años, 11 meses
Puntos: 2
no ingresa datos al mysql

hola, tengo la base q cree aplicada en mi web, de manera demostrativa, tuve q cambiar el archivo conexion para poder usarla, porque el hosting asi me lo pedia, y ahora no me ingresa los datos, si lo hace en forma local con todo instalado, pero en la web me ingresa el ID automaticamente y lo demas lo deja en blanco, aqui el link para q lo vean a ver si me pueden dar un mano

http://www.computacionemc.com.ar/biblio1/index.html

no sé qué mas datos darles, ya que como dije, en forma local funciona, con la web no, y no entiendo la diferencia, ya que conectar a la base se conecta bien

espero que me puedan ayudar! gracias!
  #2 (permalink)  
Antiguo 20/05/2009, 21:12
Avatar de By_George  
Fecha de Ingreso: abril-2009
Ubicación: localhost
Mensajes: 629
Antigüedad: 15 años
Puntos: 19
Respuesta: no ingresa datos al mysql

cual es el codigo que utilizas??? no te marca error son los campos iguales en tipo y longitud a los que quieres insertar???
__________________
La estadística es una ciencia que demuestra que si mi vecino tiene dos coches y yo ninguno, los dos tenemos uno.
  #3 (permalink)  
Antiguo 20/05/2009, 21:17
 
Fecha de Ingreso: mayo-2006
Ubicación: Ciudad de Buenos Aires
Mensajes: 78
Antigüedad: 17 años, 11 meses
Puntos: 2
Respuesta: no ingresa datos al mysql

Cita:
Iniciado por By_George Ver Mensaje
cual es el codigo que utilizas??? no te marca error son los campos iguales en tipo y longitud a los que quieres insertar???
hola, gracias por responder tan rapido

no tira error alguno, me la llena en blanco, solo el ID y el Identificacor en 0; el codigo q uso es

Código PHP:
<?
include "conexion.php";
  
$result=mysql_query ("INSERT INTO biblioa (ident, titulo, autor, articulo, autorart, codigo, editorial, anio, observaciones)
    VALUES ('$ident','$titulo','$autor','$articulo','$autorart','$codigo','$editorial','$anio','$observaciones')"
);
include 
"cerrar_conexion.php";
?>
gracias!!!
  #4 (permalink)  
Antiguo 20/05/2009, 21:19
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: no ingresa datos al mysql

me suena a register_globals ...

debes usar $_POST['variable'] en lugar de $variable

Código HTML:
<input name="foo"/> 
Código PHP:
// MAL
$sql "INSERT INTO tabla(campo) VALUES('$foo')";

// BIEN
$sql "INSERT INTO tabla(campo) VALUES('{$_POST['foo']}')"
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Última edición por pateketrueke; 20/05/2009 a las 21:53
  #5 (permalink)  
Antiguo 20/05/2009, 21:51
 
Fecha de Ingreso: mayo-2006
Ubicación: Ciudad de Buenos Aires
Mensajes: 78
Antigüedad: 17 años, 11 meses
Puntos: 2
Respuesta: no ingresa datos al mysql

genial george! funcionó perfecto muchas gracias!

ahora no entiendo por qué en forma local funciona igual, si me lo podes explicar mejor, gracias!!!

Última edición por inorganico0; 21/05/2009 a las 00:12
  #6 (permalink)  
Antiguo 20/05/2009, 22:00
Avatar de By_George  
Fecha de Ingreso: abril-2009
Ubicación: localhost
Mensajes: 629
Antigüedad: 15 años
Puntos: 19
Respuesta: no ingresa datos al mysql

bueno yo creo que lo solucionaste con lo que te dijo pateketrueke!!! si es asi es por que en tu servidor local debes de tener activado las register_globals de tu php.ini y el otro servidor nop por eso. o como??
__________________
La estadística es una ciencia que demuestra que si mi vecino tiene dos coches y yo ninguno, los dos tenemos uno.
  #7 (permalink)  
Antiguo 20/05/2009, 22:10
 
Fecha de Ingreso: mayo-2006
Ubicación: Ciudad de Buenos Aires
Mensajes: 78
Antigüedad: 17 años, 11 meses
Puntos: 2
Respuesta: no ingresa datos al mysql

bien, veré si puedo modificar la config del php del hosting, ahora tengo esto para actualizar, y no me actualiza:

Código PHP:
<?
include "conexion.php";
$id $_POST["id"];
if (!isset(
$accion))
    {
    
$result=mysql_query("SELECT * FROM biblioa WHERE id={$_POST['id']}",$conexion);
    if (
mysql_num_rows($result) == 0
    { echo 
"<b>Identificador Inexistente</b>"; } 
    else 
    {
        
$row=mysql_fetch_row($result);
        echo
"
<table width=100>
<tr>
  <form action=\"update.php?accion=guardar\" method=\"POST\">
  <b>Ident:</b><br>
  <input type=\"text\" value=\"$row[1]\" name=\"ident\"><br><br>
  <b>Título:</b><br>
  <input type=\"text\" value=\"$row[2]\" name=\"titulo\"><br><br>
  <b>Autor:</b><br>
  <input type=text value=\"$row[3]\" name=\"autor\" size=50><br><br>
  <b>Artículo:</b><br>
  <input type=text value=\"$row[4]\" name=\"articulo\" size=50><br><br>
  <b>Autor del Artículo:</b><br>
  <input type=\"text\" value=\"$row[5]\" name=\"autorart\" size=15><br><br>
  <b>Código:</b><br>
  <input type=\"text\" value=\"$row[6]\" name=\"codigo\" size=15><br><br>
  <b>Editorial:</b><br>
  <input type=\"text\" value=\"$row[7]\" name=\"editorial\" size=15><br><br>
  <b>Año:</b><br>
  <input type=\"text\" value=\"$row[8]\" name=\"anio\" size=30><br><br>
  <b>Observaciones:</b><br>
  <input type=\"text\" value=\"$row[9]\" name=\"observaciones\" size=100><br><br><br>
  <input type=\"hidden\" name=\"id\" value=\"$row[0]\">
  <input type=\"submit\" value=\"Guardar\">
  </form>
  </tr>
  </table>
  </body>
  </html>"
;
}
}
elseif(
$accion==guardar){
  
$sql "UPDATE biblioa SET ident={$_POST['ident']}, titulo='$titulo', autor='$autor', articulo='$articulo', autorart='$autorart', codigo='$codigo', editorial='$editorial', anio='$anio', observaciones='$observaciones' WHERE id = $id";
  
$result mysql_query($sql);
  echo
"
  <html>
  <body>
  <b>Los datos han sido actualizados</b>
  </body>
  </html>"
;
}
include 
"cerrar_conexion.php";
?>
si lo ves medio "deforme", es porque estuve probando con lo q vos me decias. gracias por la ayuda!
  #8 (permalink)  
Antiguo 20/05/2009, 22:14
Avatar de By_George  
Fecha de Ingreso: abril-2009
Ubicación: localhost
Mensajes: 629
Antigüedad: 15 años
Puntos: 19
Respuesta: no ingresa datos al mysql

pues para empezar lo que deberias de modificar no es la configuracion del hosting si no la forma en recibir tus valores, por que por buenas practicas y sobre todo por seguridad(si no es asi que me corrijan) debes de manejar tus valores asi:

$_POST["variable"] o $_GET["variable"] segun sea el caso de con que metodo mandes el dato

ok por que tu action esta asi:

action=\"update.php?accion=guardar\"

si lo que quieres es mandar una bandera que te indique que accion es la que va a realizar mandalo en un campo tipo hidden y ademas todas las variables que mandes por post o get tienes que ecibirlas asi:

$_POST["variable"] o $_GET["variable"] segun ea el caso
__________________
La estadística es una ciencia que demuestra que si mi vecino tiene dos coches y yo ninguno, los dos tenemos uno.
  #9 (permalink)  
Antiguo 20/05/2009, 22:50
 
Fecha de Ingreso: mayo-2006
Ubicación: Ciudad de Buenos Aires
Mensajes: 78
Antigüedad: 17 años, 11 meses
Puntos: 2
Respuesta: no ingresa datos al mysql

Cita:
Iniciado por By_George Ver Mensaje
pues para empezar lo que deberias de modificar no es la configuracion del hosting si no la forma en recibir tus valores, por que por buenas practicas y sobre todo por seguridad(si no es asi que me corrijan) debes de manejar tus valores asi:

$_POST["variable"] o $_GET["variable"] segun sea el caso de con que metodo mandes el dato

ok por que tu action esta asi:

action=\"update.php?accion=guardar\"

si lo que quieres es mandar una bandera que te indique que accion es la que va a realizar mandalo en un campo tipo hidden y ademas todas las variables que mandes por post o get tienes que ecibirlas asi:

$_POST["variable"] o $_GET["variable"] segun ea el caso
Tengo esto y no me deja actualizar, vuelve a mostrarme el formulario:

Código PHP:
<?
include "conexion.php";
$id $_POST["id"];
if (!isset(
$accion))
    {
    
$result=mysql_query("SELECT * FROM biblioa WHERE id = $id",$conexion);
    if (
mysql_num_rows($result) == 0
    { echo 
"<b>Identificador Inexistente</b>"; } 
    else 
    {
        
$row=mysql_fetch_row($result);
        echo
"
<table width=100>
<tr>
  <form action=\"update.php?accion=Guardar\" method=\"POST\" type=\"hidden\">
  <b>Ident:</b><br>
  <input type=\"text\" value=\"$row[1]\" name=\"ident\"><br><br>
  <b>Título:</b><br>
  <input type=\"text\" value=\"$row[2]\" name=\"titulo\"><br><br>
  <b>Autor:</b><br>
  <input type=text value=\"$row[3]\" name=\"autor\" size=50><br><br>
  <b>Artículo:</b><br>
  <input type=text value=\"$row[4]\" name=\"articulo\" size=50><br><br>
  <b>Autor del Artículo:</b><br>
  <input type=\"text\" value=\"$row[5]\" name=\"autorart\" size=15><br><br>
  <b>Código:</b><br>
  <input type=\"text\" value=\"$row[6]\" name=\"codigo\" size=15><br><br>
  <b>Editorial:</b><br>
  <input type=\"text\" value=\"$row[7]\" name=\"editorial\" size=15><br><br>
  <b>Año:</b><br>
  <input type=\"text\" value=\"$row[8]\" name=\"anio\" size=30><br><br>
  <b>Observaciones:</b><br>
  <input type=\"text\" value=\"$row[9]\" name=\"observaciones\" size=100><br><br><br>
  <input type=\"hidden\" name=\"id\" value=\"$row[0]\">
  <input type=\"submit\" value=\"Guardar\">
  </form>
  </tr>
  </table>
  </body>
  </html>"
;
}
}
elseif(
$accion==guardar){
  
$sql "UPDATE biblioa SET ident='{$_POST['ident']}', titulo='{$_POST['titulo']}', autor='{$_POST['autor']}', articulo='{$_POST['articulo']}', autorart='{$_POST['autorart']}', codigo='{$_POST['codigo']}', editorial='{$_POST['editorial']}', anio='{$_POST['anio']}', observaciones='{$_POST['observaciones']}' WHERE id = '{$_POST['id']}'";
  
$result mysql_query($sql);
  echo
"
  <html>
  <body>
  <b>Los datos han sido actualizados</b>
  </body>
  </html>"
;
}
include 
"cerrar_conexion.php";
?>
lo que mencionas de hidden creo haberlo hecho; y lo de $_POST["variable"] o $_GET["variable"] no me lo toma tal cual, me tira error, me sigue ayudando? muchisimas gracias
  #10 (permalink)  
Antiguo 20/05/2009, 22:52
 
Fecha de Ingreso: mayo-2006
Ubicación: Ciudad de Buenos Aires
Mensajes: 78
Antigüedad: 17 años, 11 meses
Puntos: 2
Respuesta: no ingresa datos al mysql

Cita:
Iniciado por By_George Ver Mensaje
pues para empezar lo que deberias de modificar no es la configuracion del hosting si no la forma en recibir tus valores, por que por buenas practicas y sobre todo por seguridad(si no es asi que me corrijan) debes de manejar tus valores asi:

$_POST["variable"] o $_GET["variable"] segun sea el caso de con que metodo mandes el dato

ok por que tu action esta asi:

action=\"update.php?accion=guardar\"

si lo que quieres es mandar una bandera que te indique que accion es la que va a realizar mandalo en un campo tipo hidden y ademas todas las variables que mandes por post o get tienes que ecibirlas asi:

$_POST["variable"] o $_GET["variable"] segun ea el caso
Tengo esto y no me deja actualizar, vuelve a mostrarme el formulario:

Código PHP:
<?
include "conexion.php";
$id $_POST["id"];
if (!isset(
$accion))
    {
    
$result=mysql_query("SELECT * FROM biblioa WHERE id = $id",$conexion);
    if (
mysql_num_rows($result) == 0
    { echo 
"<b>Identificador Inexistente</b>"; } 
    else 
    {
        
$row=mysql_fetch_row($result);
        echo
"
<table width=100>
<tr>
  <form action=\"update.php?accion=Guardar\" method=\"POST\" type=\"hidden\">
  <b>Ident:</b><br>
  <input type=\"text\" value=\"$row[1]\" name=\"ident\"><br><br>
  <b>Título:</b><br>
  <input type=\"text\" value=\"$row[2]\" name=\"titulo\"><br><br>
  <b>Autor:</b><br>
  <input type=text value=\"$row[3]\" name=\"autor\" size=50><br><br>
  <b>Artículo:</b><br>
  <input type=text value=\"$row[4]\" name=\"articulo\" size=50><br><br>
  <b>Autor del Artículo:</b><br>
  <input type=\"text\" value=\"$row[5]\" name=\"autorart\" size=15><br><br>
  <b>Código:</b><br>
  <input type=\"text\" value=\"$row[6]\" name=\"codigo\" size=15><br><br>
  <b>Editorial:</b><br>
  <input type=\"text\" value=\"$row[7]\" name=\"editorial\" size=15><br><br>
  <b>Año:</b><br>
  <input type=\"text\" value=\"$row[8]\" name=\"anio\" size=30><br><br>
  <b>Observaciones:</b><br>
  <input type=\"text\" value=\"$row[9]\" name=\"observaciones\" size=100><br><br><br>
  <input type=\"hidden\" name=\"id\" value=\"$row[0]\">
  <input type=\"submit\" value=\"Guardar\">
  </form>
  </tr>
  </table>
  </body>
  </html>"
;
}
}
elseif(
$accion==guardar){
  
$sql "UPDATE biblioa SET ident='{$_POST['ident']}', titulo='{$_POST['titulo']}', autor='{$_POST['autor']}', articulo='{$_POST['articulo']}', autorart='{$_POST['autorart']}', codigo='{$_POST['codigo']}', editorial='{$_POST['editorial']}', anio='{$_POST['anio']}', observaciones='{$_POST['observaciones']}' WHERE id = '{$_POST['id']}'";
  
$result mysql_query($sql);
  echo
"
  <html>
  <body>
  <b>Los datos han sido actualizados</b>
  </body>
  </html>"
;
}
include 
"cerrar_conexion.php";
?>
lo que mencionas de hidden creo haberlo hecho; y lo de $_POST["variable"] o $_GET["variable"] no me lo toma tal cual, me tira error, me sigue ayudando? muchisimas gracias
  #11 (permalink)  
Antiguo 20/05/2009, 23:07
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: no ingresa datos al mysql

dos cosas....

Código PHP:
$id $_POST["id"]; 
$accion $_POST["accion"]; 

// ...

if ($accion == "alguna_accion"// .. 
por favor, usa las comillas.... y presta mas atención, suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #12 (permalink)  
Antiguo 21/05/2009, 00:13
 
Fecha de Ingreso: mayo-2006
Ubicación: Ciudad de Buenos Aires
Mensajes: 78
Antigüedad: 17 años, 11 meses
Puntos: 2
Respuesta: no ingresa datos al mysql

perdon a todos, pero no logro actualizar, tampoco eliminar, q en base funcionan igual creo, por lo que entiendo, el problema está al mandar la accion, leí las ayudas que me dieron, pero igual no doy pie con bola, un desastre, intento prestar atencion, buscar en ejemplos ya dados, etc, pero no puedo, me ayudan? gracias!
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 14:44.