Foros del Web » Programando para Internet » PHP »

ayuda para hacer función

Estas en el tema de ayuda para hacer función en el foro de PHP en Foros del Web. A ver, mi problema es el de siempre. Tengo un ranking, con cuadros de texto y botones de radio al lado para seleccionar la opción. ...
  #1 (permalink)  
Antiguo 05/09/2003, 11:53
tlk
 
Fecha de Ingreso: julio-2003
Ubicación: zaragoza
Mensajes: 74
Antigüedad: 21 años, 3 meses
Puntos: 0
ayuda para hacer función

A ver, mi problema es el de siempre. Tengo un ranking, con cuadros de texto y botones de radio al lado para seleccionar la opción. Quiero que al seleccionar un botón de radio suba la cancion que está abajo arriba y viceversa, y para que quede reflejado el cambio en la página (ya que lo tenía hecho con una función javascript) quiero hacerlo con una función php, pero no tengo ni idea de php. A ver si podeis orientarme en que hago mal. Os pongo todo el código:

<html>
<head>
<title>MÚSICA</title>

<?php

$n=$_POST['top'];

function sube()
{
if ($n==0)
{return;}
if ($n==1)
{
$_POST['txt2']=votado;
$_POST['txt1']=baja;
$txt1=$votado;
$txt2=$baja;
}
/*y seguiría la función hasta n=10*/
}
?>

</head>

<body>


<form method="POST" action="musican.php" name="lista">

<p align="left"><input type="radio" value="V11" name="top" checked>&nbsp; 1 - <input type="text" name="txt1" size="35" value="Dj Mendez &quot;Fiesta (House party)&quot;" readonly>

<p align="left"><input type="radio" name="top" value="V12">&nbsp; 2 - <input type="text" name="txt2" size="35" value="David Civera &quot;Bye, bye&quot;" readonly>

/*y así hasta diez canciones*/

<p align="center"><a href="window.location='musican.php'"><img src="votarbutton.gif" name='sub' alt="votar" width="100" height="22"></a></p>

</form>
</body>

</html>

A ver si alguien puede ayudarme y al fin consigo hacerlo. Muchas gracias.
__________________
tlk
  #2 (permalink)  
Antiguo 05/09/2003, 12:29
 
Fecha de Ingreso: abril-2003
Mensajes: 656
Antigüedad: 21 años, 7 meses
Puntos: 1
mas o menos entiendo lo que quieres hacer , pero tienes de tener en cuenta que el php es un lenguaje servidor, osea que todo se procesa en el servidor, por lo que tu pagina se recargara cada vez.

Al decir esto, quiero decir que las variables bueno las canciones tienen de estar guardadas en alguna prte del servidor sea en archivo o sea en BDD , y al hacer una llamada a tu base pues rectifica la posicion de tus datos en la pagina,

pero siempre lo hace el servidor

un saludo
  #3 (permalink)  
Antiguo 06/09/2003, 11:06
tlk
 
Fecha de Ingreso: julio-2003
Ubicación: zaragoza
Mensajes: 74
Antigüedad: 21 años, 3 meses
Puntos: 0
muchas gracias por responderme, pero.. como lo hago?? Necesito código o algún tipo de ejemplo
__________________
tlk
  #4 (permalink)  
Antiguo 06/09/2003, 15:59
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Pero ..

Para que quieres hacerlo en "PHP"? .. A ti lo que te interesa es que una vez ordenado todo eso en el "cliente" (en el navegador con tu función Javascript) .. si le das a un botón "Guardar cambios" .. quede corregido ese cambio en el servidor (en tu BD o donde te trabajes esos datos ..)

Si enfocas así el problema .. verás que es más simple y más "usable" tu aplicación ..

El hecho de hacerlo con PHP .. supondría estar haciendo algún tipo de "onClick" -> "Submit" de TODO ese formulario (donde contendrás esos botones "radio" ) para que con PHP ordenes tu... (no sé si array, consulta a tu BD .. o lo que sea) y entregar al navegador nuevamente una página completa con dicho cambio reflejado ..

Todo esto a costa de "idas" y "venidas" de esa página al servidor con el consiguiente tiempo de espera entre cambios y el consumo de tasa de transferencia en tu "servidor" ...

En resumen ..

Si ya tienes resuelto el problema en javascript .. sólo usa un formulario para que todos esos cambios "suban" al servidor y ahí los recogas en PHP para que los proceses donde corresponda ..

Un saludo,

pd: Si quieres ejemplos ... antes tendrías que poner tu el código que usas (aunque sea el javascript .. Por lo menos para ver que es lo que "ordenas" o modificas como para saber "qué" es lo que hay que enviar al servidor o esperar recibir .. ¿Tu sabes que es lo que hace realmente esa funcionalidad que tienes en javascript? ..)
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 07/09/2003, 09:37
tlk
 
Fecha de Ingreso: julio-2003
Ubicación: zaragoza
Mensajes: 74
Antigüedad: 21 años, 3 meses
Puntos: 0
Muchas gracias Cluster, suponía que no iba bien encaminada haciendo la función en php pues no estaba segura de que así quedaran grabados los cambios. Lo que necesito saber pues es como puedo guardar esos cambios realizados por la funcion javascript, es decir, cómo "rehacer" mediante php la página con los cambios realizados por el usuario, no? Vale, pero es que no tengo ni idea de como hacerlo y te agradecería mucho que me orientaras. Te voy a mandar el código de lo que quiero hacer, de acuerdo? ahí va: (al lado de cada canción de la lista hay un icono para oir un trozo, la función a parte de subir de posición la cancion votada en la lista cambia tb el href del icono para que se corresponda con la canción que ha subido o ha bajado)

<head>
<script language="JavaScript">
function subeposicion()
{
if (n==1) /*n vale una cosa u otra según el botón de radio que haya seleccionado el usuario*/
{return;}
if (n==2)
{votado=window.document.forms.lista.txt2.value;
baja=window.document.forms.lista.txt1.value;
window.document.forms.lista.txt1.value=votado;
window.document.forms.lista.txt2.value=baja;
segundo=hip1.href;
primero=hip2.href;
hip1.href=primero;
hip2.href=segundo;}
if (n==3)
{votado=window.document.forms.lista.txt3.value;
baja=window.document.forms.lista.txt2.value;
window.document.forms.lista.txt2.value=votado;
window.document.forms.lista.txt3.value=baja;
tercero=hip2.href;
segundo=hip3.href;
hip2.href=segundo;
hip3.href=tercero;}
/*y la función seguiría hasta n=10*/
</script></head>

<body>
<form method="POST" name="lista">
<p align="left"><input type="radio" value="V11" name="top" checked onclick='n=1'>&nbsp; 1 - <input type="text" name="txt1" size="35" value="cancion1" readonly>
<a id="hip1" href="cancion1.mp3"><img border="0" src="auricular.gif" width="40" height="40"></a></p>
<p align="left"><input type="radio" name="top" value="V12" onclick='n=2'>&nbsp; 2 - <input type="text" name="txt2" size="35" value="cancion2" readonly>
<a id="hip2" href="cancion2.mp3"><img border="0" src="auricular.gif" width="40" height="40"></a></p>

/*y así hasta diez canciones*/

<p align="center"><a href="javascript:subeposicion()" id="votar"><img src="votarbutton.gif" alt="votar" width="100" height="22"></a></p>

</form></body>

Te agradecería mucho que me ayudaras. Un saludo
__________________
tlk
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 22:32.