Foros del Web » Programando para Internet » PHP »

Problema con javascript y php.

Estas en el tema de Problema con javascript y php. en el foro de PHP en Foros del Web. Mirar, toy intentando hacer una cosa… Tengo una lista con 5 elementos, los cuales tienen values, de carpetas de mi ftp. Bien, pues quiero que ...
  #1 (permalink)  
Antiguo 08/05/2006, 17:49
 
Fecha de Ingreso: abril-2006
Mensajes: 218
Antigüedad: 11 años, 8 meses
Puntos: 0
Problema con javascript y php.

Mirar, toy intentando hacer una cosa…

Tengo una lista con 5 elementos, los cuales tienen values, de carpetas de mi ftp.

Bien, pues quiero que según vaya cambiando entre un elemento u otro, el value del que este seleccionado, se ponga en un div, mostrando así la ruta actual.

A la vez, quiero que el value del que este seleccionado, se ponga en el value de un campo typo=”hidden”, que tengo, para poder extraerlo con PHP, para poder utilizar esa ruta, posteriomente, para subir un archivo.

El código que tengo es el siguiente, pero no me funciona:

echo "<table width='80%' border='0' cellspacing='0' cellpadding='0'>";

echo "<form Enctype='Multipart/Form-Data' action='$pag?accion=subir' method='post' name='form_ftp' id='form_ftp'>";

echo "<tr height='12'><td></td></tr>";

echo "<tr height='20'>";

echo "<td align='left'>"

echo "<span class='texto'>Elija sección para subir las imágenes:<img src='Images/espacio.gif' width='10' height='1'></span>";

echo "<select name='carpetas' class='casillas' id='carpetas' onchange='var ruta=document.getElementById('ruta');var
carpeta=document.getElementById('carpetas');ruta.i nnerHTML=carpetas.options[carpetas.selectedIndex].value;var
rutaphp=document.getElementById('rutaphp');rutaphp .value=carpetas.options[carpetas.selectedIndex].value;'>";

echo "<option value='/home/cmnghjuw/public_html/trabajos/grafico/'>Diseño Gráfico</option>";

echo "<option value='/home/cmnghjuw/public_html/trabajos/web/'>Diseño Web</option>";

echo "<option value='/home/cmnghjuw/public_html/trabajos/multimedia/'>Multimedia</option>";

echo "<option value='/home/cmnghjuw/public_html/trabajos/ilustracion/'>Ilustración</option>";

echo "<option value='/home/cmnghjuw/public_html/trabajos/infografia/'>Infografía</option>";

echo "</select>";

echo "</td>";

echo "</tr>";

echo "<tr height='30'><td></td></tr>";

echo "<tr height='15'>";

echo "<td>";

echo "<span class='texto'>El directorio actual es: <i id=ruta></i></span>";

echo "</td></tr>";

echo "<tr height='30'><td><input type='hidden' name='rutaphp' id='rutaphp' value=''></td></tr>";

echo "</form>";

echo "</table>";

$_POST['rutaphp'];

No me funciona nada, ni me muestra los values, dentro del div.

Si pudierais revisarmelo, por favor os lo agradecería mucho, gracias.
  #2 (permalink)  
Antiguo 08/05/2006, 19:55
 
Fecha de Ingreso: junio-2002
Mensajes: 751
Antigüedad: 15 años, 6 meses
Puntos: 22
Las comillas simples que encierran onchange: como dentro de onchange hay otras comillas simples, toma la primera que encuentra como final de onchange.
Pon comillas dobles y las escapas con \" para que no interfieran con las usadas para encerrar echo.

En innerHTML hay un espacio en blanco.

Cita:
echo "<select name='carpetas' class='casillas' id='carpetas' onchange='var ruta=document.getElementById('ruta');var
carpeta=document.getElementById('carpetas');ruta.i nnerHTML=carpetas.options[carpetas.selectedIndex].value;var
rutaphp=document.getElementById('rutaphp');rutaphp .value=carpetas.options[carpetas.selectedIndex].value;'>";

Código PHP:
echo "<select name='carpetas' class='casillas' id='carpetas' onchange=\"var ruta=document.getElementById('ruta');
var carpeta=document.getElementById('carpetas');
ruta.innerHTML=carpeta.options[carpeta.selectedIndex].value;
var rutaphp=document.getElementById('rutaphp');rutaphp.value=carpeta.options[carpeta.selectedIndex].value;\">"

Otro método para "imprimir" trozos largos es usar heredoc syntax:

echo <<<EOT
blah blah blah
todo el código html aquí
blah blah blah
EOT;
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 19:13.