Comunidad de diseño web y desarrollo en internet online

crear e invocar funciones desde un mismo script

Citar            
MensajeEscrito el 13 May 2005 11:01 pm
Saludos a todos, tengo una pequeña pregunta sobre php y es que a veces cuando quiero, por ejemplo, borrar un registro de una base de datos, lo que hago es esto:
crear una pagina que crea un juego de registros de toda esa tabla, luego a cada registro le pongo un vínculo a otra pagina enviándole como parámetro el número de ID del registro que quiero borrar. Pues bien quisiera saber si hay alguna forma de hacer todo en una misma página, un mismo script, o sea: que haya una funcion que luego puedes invocar desde la misma página. Eso es posible o siempre tengo que ir creando nuevas scripts en otras paginas?

Por Smithy

159 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 13 May 2005 11:16 pm
Sí puedes hacerlo todo en una sóla página...
Necesitas -de entrada- evaluar (con un if) si el submit (o el nombre que le quieras dar al botón que envía la forma) ha sido enviado:

Código :

if($_POST['submit']){
//entonces aquí incluyes la sentencia SQL
$query = "delete......";
} else {
//si no se ha sometido la forma, o sea enviado apretado el botón submit entonces imprimes el formulario o lo que quieras
echo "<form></form>";
}//end if


Obviamente puede ser MUCHO más complejo.
Nada más requiere un poco de análisis, lógica e imaginación (conociendo PHP obviamente).

Éxito!

Por Pedro

BOFH

3017 de clabLevel

3 tutoriales
6 articulos

  Bastard Operators From Hell

Honduras

firefox
Citar            
MensajeEscrito el 13 May 2005 11:24 pm
C00L como siempre me salvas de muchas Sempai peter, es exactamente lo mismo que me estaba preguntando (mira que nunca me ha salido) pero ya tengo una enorme idea de como hacerlo :P je,je,je

Por Aoyama

BOFH

6224 de clabLevel

6 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Bastard Operators From Hell

Webdesigner & Developer, en mis ratos libres bebo café por litros.

firefox
Citar            
MensajeEscrito el 13 May 2005 11:33 pm
ok, thanks. pero si no es con un formulario? porque yo pongo así

<a href="borrar.php?ID=<?php echo $juego['ID']; ?>">Borrar Registro</a>

O sea: mando los parámetros con un vínculo y no con un form, entonces después la pagina borrar.php tendría un script del tipo

<?php $registro = $_GET['ID'];
mysql_query("DELETE * ...

entonces cómo podría hacer para hacerlo desde un mismo script? pongo el mysql_query en un function?

Saludos!

Por Smithy

159 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 13 May 2005 11:49 pm
ES LO MISMO!
Cambia:

Código :

if($_GET['ID']){
//el query
} else {
//tu link
}//end if


Necesitas pensar un poco más... esfuérzate un poco más. Con lo primero que te dí, era suficiente para deducir esto.

Éxito!

P.D. No me molesta ayudarte, sólo pido un poco más de esfuerzo, yo también estoy trabajando ;)

Por Pedro

BOFH

3017 de clabLevel

3 tutoriales
6 articulos

  Bastard Operators From Hell

Honduras

firefox
Citar            
MensajeEscrito el 14 May 2005 10:04 pm
ok, gracias. Lo estuve probando y ya sale, sorry pero estuve un tiempo sin ver codigo y es como que se me olvidaron muchas cosas y es frustrante. No sé si a ustedes les pasa.

Ahora me pregunto si es posible hacer un "refresh" para que en el juego de registros ya no aparezca el registro eliminado, por ejemplo ya me salió que si agrego un registro y le hago el

if($_POST['asd']) {
if(mysql_query("INSERT...") {
header("Location: #");
}
}

aparece el nuevo registro, pero no sé como hacer para eliminar uno usando el $_GET y que haga un "refresh", porque no sale con el mismo truco xD

Saludos

Por Smithy

159 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 14 May 2005 10:26 pm
lanza un SELECT sencillo después de la eliminación, al menos yo lo haría así :P

Por Aoyama

BOFH

6224 de clabLevel

6 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Bastard Operators From Hell

Webdesigner & Developer, en mis ratos libres bebo café por litros.

firefox
Citar            
MensajeEscrito el 16 May 2005 02:12 am
Recuerda que para usar esta función

Código :

 header("Location: #"); 
No tienes que haber enviadfo ningún HTML antes...

Por Pedro

BOFH

3017 de clabLevel

3 tutoriales
6 articulos

  Bastard Operators From Hell

Honduras

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.