Foros del Web » Programando para Internet » PHP »

Añadir, Modificar, Eliminar

Estas en el tema de Añadir, Modificar, Eliminar en el foro de PHP en Foros del Web. Agradezco por la ayuda que me dieron en otro tema, ahora estoy tratando de hacer una aplicacion, parecido a lo que despliega Hotmail, que muestre ...
  #1 (permalink)  
Antiguo 18/06/2003, 15:20
 
Fecha de Ingreso: mayo-2003
Ubicación: New Jersey
Mensajes: 3
Antigüedad: 14 años, 6 meses
Puntos: 0
Añadir, Modificar, Eliminar

Agradezco por la ayuda que me dieron en otro tema, ahora estoy tratando de hacer una aplicacion, parecido a lo que despliega Hotmail, que muestre una lista y en la misma pagina tenga las opciones de añadir, modificar y eliminar. Les envio el codigo siguiente:

Aqui muestro la lista y las opciones en forma de botones:

<?
AQUI HAGO LAS CONEXIONES A LA BD
?>
<form name="Opcion" method="get" action="borrar.php">
<table width="61%" border="0" align="center">
<tr bordercolor="#FFFFFF" bgcolor="#003399">
<td><div align="center"><font color="#FFFFFF">COD</font></div></td>
<td><div align="center"><font color="#FFFFFF">SIZE</font></div></td>
<td><div align="center"><font color="#FFFFFF">PRICE</font></div></td>
</tr>
<?
$i=0;
while($a=mssql_fetch_row($resultado))
{
$i++;
if ($i%2) $color="#B7C0CA";
else $color="#96EBE7";
/***** EN ESTA PARTE DESPLIEGO LA LISTA *****/
echo "<tr bgcolor=$color>";
for($j=0; $j<=2; $j++){
echo "<td>";
if ($j==0) echo "<input name=existe[] type=checkbox value=$a[$j]>";
else
{
echo "$a[$j]";
echo "</td>\n";
}
}

echo "</tr>";
}
?>
</table>
<p align="center">
/*** ESTOS SON LOS BOTONES ***/
<input type="submit" name="op" value="New">
<input type="submit" name="op" value="Edit">
<input type="submit" name="op" value="Delete">
<input type="reset" name="Submit32" value="Cancel">
</p>
</form>
</body>
</html>

EN EL SIGUIENTE SCRIPT HAGO LA VALIDACION DE BOTONES:

<?

EN ESTA PARTE HAGO LAS CONEXIONES A LA BD

Function Eliminar()
{
for ($i=0; $i<count($existe); $i++) {
$consulta = "delete from Det_Order_form where d_cod = '".$existe[$i]."'";
$resultado=mssql_query($consulta,$conexion);
}
if(!$resultado){
echo"<hr><br>";
echo"<b>No fue posible realizar la eliminacion ".$existe[0]."</b> ";
echo "</body>";
echo "</html>";
exit;
}
}
?>

<?

/* EN ESTA PARTE VALIDO LA OPCION ELEGIDA DE LA ANTERIOR PAGINA */

if ($op == "Edit"){
echo"<hr><br>";
echo "Edit <br>\n";
Edicion();
} elseif ($op == "Delete"){
echo"<hr><br>";
echo "Delete!!! <br>\n";
Eliminar();
} else {
echo "Termino <br>\n";
}
?>

El problema que se presenta es que la eleccion de una opcion se realiza correctamente cuando va al script, pero cuando encuentra una de las funciones en este caso eliminar() PHP me dice que el vector existe[] no se la encuentra.
La pregunta es que debo hacer para pasar mas variables de un formulario a un scripts?
Todo consejo se los agradecere
OLM

Última edición por osmar; 18/06/2003 a las 15:23
  #2 (permalink)  
Antiguo 18/06/2003, 15:37
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Supongo que pondras el codigo porque no te funciona, ¿verdad? Si es asi, podrias que decir que es lo que no te funciona y como no te funciona. Pero supongo que es la funcion Eliminar(), ¿verdad? Porque en ella veo un problema. Desde dentro de una funcion no se puede acceder a una variable del ambito global (a no ser que sea superglobal) sin declararla como global dentro de la funcion. Ese es el problema con $existe[]. Mira http://www.php.net/manual/en/languag...bles.scope.php

Luego esta tu consulta SQL. Tal como esta no esta mal, quizas lo que esta mal es tu comprobacion del error, que no la entiendo. Aun asi, podrias intentar hacer la consulta en una sola en lugar de usar un bucle. Mira en http://www.mysql.com/doc/en/Comparison_Operators.html el operador IN(). Como segundo operador tiene una lista de valores separados por comas, que podrias obtener facilmente de $existe[] usando la funcion join() (www.php.net/join).

Eso si, antes de hacer cualquier operacion que requiera que haya marcado por lo menos un elemento, comprueba que $existe[] es un array (www.php.net/is-array) y que tiene por lo menos un elemento. Porque si no van a empezarte a fallar las funciones que necesiten un array como parametro.

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 18/06/2003, 18:02
 
Fecha de Ingreso: mayo-2003
Ubicación: New Jersey
Mensajes: 3
Antigüedad: 14 años, 6 meses
Puntos: 0
Gracias

Seguire tus sugerencias...

Sigo confundido, hice la declaracion global del vector, pero lo que no se, es como poder enviar variables de un formulario a un scripts, en este caso, es el vector existe[] y la opcione elegida (Anadir, Modificar o Eliminar)....
Gracias

Última edición por osmar; 18/06/2003 a las 18:02
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 08:09.