Foros del Web » Creando para Internet » Herramientas y Software »

no se añaden registros

Estas en el tema de no se añaden registros en el foro de Herramientas y Software en Foros del Web. Hola Estoy aprendiendo dreamweaver y php mediante una wampserver y dreamweaver 8 y de guión un libro de la editorial Anaya Multimedia "Desarrollo web con ...
  #1 (permalink)  
Antiguo 07/03/2008, 03:59
Avatar de manweb  
Fecha de Ingreso: febrero-2008
Mensajes: 16
Antigüedad: 16 años, 2 meses
Puntos: 0
no se añaden registros

Hola
Estoy aprendiendo dreamweaver y php mediante una wampserver y dreamweaver 8 y de guión un libro de la editorial Anaya Multimedia "Desarrollo web con PHP y Dreamweaver MX 2004 versión dual".
He Llegado hasta la parte en la que despues de crear un conjunto de registros, la utilizacion de comportamientos del servidor. Pero ahora tengo un problema con Añadir nuevos registros a una base de datos.
He creado un formulario con un campo de texto y otro un bonton de envio. El campo de texto del formulario se llama igual que la columna de la base de datos y dreamweaver lo vincula automaticamente eligiendo insertar registro dentro de los comportamientos del servidor. Le he dado la conexion y la tabla (y toda mi fe en un mundo mejor) pero despues de introducir el campo no se incrementa el numero de registros y en phpmyadmin no veo el registro insertado. Ademas la pagina no se actualiza tal y como afirma el guru que escribio el libro

Hay algun tutorial mejor para esto? ¿Se escapa algo dentro del proceso de inserción de un registro? Si viera como queda el codigo de inserción de un registro con dw y php al asociarlo a un boton de un formulario, a lo mejor me daria cuenta de cual es mi error.

Saludos y aqui estamos.
  #2 (permalink)  
Antiguo 07/03/2008, 08:48
Avatar de valeguz  
Fecha de Ingreso: octubre-2006
Ubicación: Al sur sur de Argentina
Mensajes: 199
Antigüedad: 17 años, 6 meses
Puntos: 4
Re: no se añaden registros

Hola manweb
Hay alguna posibilidad que pongas parte del código? para ver en que parte puede estar la falla...
Saludos
  #3 (permalink)  
Antiguo 07/03/2008, 18:20
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Re: no se añaden registros

aquí explico como almacenar información a una base de datos una vez tienes la conexión hecha y has configurado el servidor de prueba:
http://www.forosdelweb.com/2065434-post6.html

este es el mensaje completo:
http://www.forosdelweb.com/f17/bd-php-dw8-502812/
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #4 (permalink)  
Antiguo 11/03/2008, 10:28
Avatar de manweb  
Fecha de Ingreso: febrero-2008
Mensajes: 16
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: no se añaden registros

Hola Juaniquillo

Te agradezco tu interés. Aqui tienes el código, y no se añade ni un registro.

Un Saludo.
Manweb

<?php require_once('Connections/Apress.php'); ?>
<?php
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}

$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$insertSQL = sprintf("INSERT INTO artist (artist_name) VALUES (%s)",
GetSQLValueString($_POST['artist_name'], "text"));

mysql_select_db($database_Apress, $Apress);
$Result1 = mysql_query($insertSQL, $Apress) or die(mysql_error());
}

mysql_select_db($database_Apress, $Apress);
$query_rstCDS = "SELECT cd_pk FROM cd";
$rstCDS = mysql_query($query_rstCDS, $Apress) or die(mysql_error());
$row_rstCDS = mysql_fetch_assoc($rstCDS);
$totalRows_rstCDS = mysql_num_rows($rstCDS);

mysql_select_db($database_Apress, $Apress);
$query_rstArtists = "SELECT artist_pk FROM artist";
$rstArtists = mysql_query($query_rstArtists, $Apress) or die(mysql_error());
$row_rstArtists = mysql_fetch_assoc($rstArtists);
$totalRows_rstArtists = mysql_num_rows($rstArtists);
?>

<!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>Mi Colección de CD</title>
</head>

<body>
<h1>Mi colecci&oacute;n de CD</h1>
<p><?php echo $totalRows_rstCDS ?>...CDs de <?php echo $totalRows_rstArtists ?>...artistas</p>
</br>
<h3>Añadir un nuevo artista</h3>
<form action="<?php echo $editFormAction; ?>" id="form1" name="form1" method="POST">
Artista.
<input name="artist_name" type="text" />
<input name="envio" type="button" value="A&ntilde;adir" />
<input type="hidden" name="MM_insert" value="form1">

</form>
</body>
</html>
<?php
mysql_free_result($rstCDS);

mysql_free_result($rstArtists);
?>
  #5 (permalink)  
Antiguo 11/03/2008, 12:42
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Re: no se añaden registros

¿pero te muestra algún error?
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #6 (permalink)  
Antiguo 12/03/2008, 04:41
Avatar de manweb  
Fecha de Ingreso: febrero-2008
Mensajes: 16
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: no se añaden registros

el libro dice que se añadira un nuevo registro, pero esto no ocurre.
  #7 (permalink)  
Antiguo 12/03/2008, 13:47
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Re: no se añaden registros

¿pero no te da ningún error de php? ¿has tratado la forma que puse arriba?
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #8 (permalink)  
Antiguo 16/03/2008, 14:07
Avatar de manweb  
Fecha de Ingreso: febrero-2008
Mensajes: 16
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: no se añaden registros

Si he probado, incluso he añdadido registros mediante phpmyadmin y me muestra cuantos tengo al iniciar la pagina, pero cuando pulso el boton añadir, no hace ni pio(al menos podria soltar una risa sacarstica , como diciendo "tu sigue asi , pardillo").

gracias por el tutorial.

manweb.
  #9 (permalink)  
Antiguo 16/03/2008, 15:36
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Re: no se añaden registros

Por más que busco no encuentro nada con el código. Vamos a hacer una prueba. Primero veamos si se está cumpliendo el 'if' del INSERT. Después de donde dice:

Código PHP:
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
  
$insertSQL sprintf("INSERT INTO artist (artist_name) VALUES (%s)",
                       
GetSQLValueString($_POST['artist_name'], "text"));

  
mysql_select_db($database_Apress$Apress);
  
$Result1 mysql_query($insertSQL$Apress) or die(mysql_error()); 
y antes del la llave "}" por lo siguiente:
Código PHP:
exit; 
osea, que se verá así:

Código PHP:
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
   
$insertSQL sprintf("INSERT INTO artist (artist_name) VALUES (%s)",
                        
GetSQLValueString($_POST['artist_name'], "text"));
 
   
mysql_select_db($database_Apress$Apress);
   
$Result1 mysql_query($insertSQL$Apress) or die(mysql_error());
   exit;

Si te sale una página en blanco quiere decir que el problema es el INSERT. Si te sale la misma página quiere decir que el 'if' no se está cumpliendo.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #10 (permalink)  
Antiguo 18/03/2008, 13:22
Avatar de manweb  
Fecha de Ingreso: febrero-2008
Mensajes: 16
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: no se añaden registros

Hola

He realizado la comprobación que has dicho y he puesto la orden exit; antes del cierre de la llave contenedora del if.... y.... sigue igual, ni se inmuta, con lo que quiere decir que el codigo del if no se esta cumpliendo.

¿porque? Ah .... eso es un misterio para los que no tenemos ni idea del php.

gracias por ayudarme.

manweb
  #11 (permalink)  
Antiguo 18/03/2008, 13:30
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Re: no se añaden registros

déjame hacer unas pruebas y te digo.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #12 (permalink)  
Antiguo 25/03/2008, 14:16
Avatar de manweb  
Fecha de Ingreso: febrero-2008
Mensajes: 16
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: no se añaden registros

Hola

Ya encontre el error.

<input name="envio" type="submit" value="A&ntilde;adir" />

y lo tenia asi <input name="envio" type="button" value="A&ntilde;adir" />


error de principiante... y eso que estaba a punto de darme un tajo en las venas.



Gracias.
  #13 (permalink)  
Antiguo 25/03/2008, 14:48
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Re: no se añaden registros

pues entonces ni siquiera se enviaba el formulario. ya veo. bueno, que bien que pudiste encontrar la solución. saludos.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
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 10:37.