Foros del Web » Programando para Internet » Javascript »

Fallo con Javascript y php

Estas en el tema de Fallo con Javascript y php en el foro de Javascript en Foros del Web. tengo una pagina que seria algo asi: <?php include("script.php") ?> <html> <head><title>titulo</title> <script src="actu.js"></script> </head> <body> Aqui estaria el body </body> </html> bien, en script.php ...
  #1 (permalink)  
Antiguo 08/04/2005, 16:37
 
Fecha de Ingreso: marzo-2005
Ubicación: Sevilla
Mensajes: 277
Antigüedad: 19 años, 1 mes
Puntos: 2
Fallo con Javascript y php

tengo una pagina que seria algo asi:
<?php
include("script.php")
?>
<html>
<head><title>titulo</title>
<script src="actu.js"></script>
</head>
<body> Aqui estaria el body
</body>
</html>

bien, en script.php tengo varias funciones
en actu.js entre otras cosas hago un document.write('<?php mifuncion() ?>');

la funcion mifuncion() estaria definida en script.php. El caso esque me da error y no se carga bien el actu.js no se xq. el error esta en este document.write xq si lo kito funciona a la perfeccion.
En las comillas no está, ya que mifuncion() usa siempre comillas del tipo " y no '

¿podria ser que el ; empleado en php lo interpretara Javascript como suyo?
Alguien sabe doene sta el fallo?
  #2 (permalink)  
Antiguo 08/04/2005, 20:47
Avatar de Danger_  
Fecha de Ingreso: diciembre-2004
Ubicación: Queretaro, México
Mensajes: 395
Antigüedad: 19 años, 4 meses
Puntos: 0
igual y si metes tu include dentro de las tags HEAD, y tu archivo JS, dentro de las tags BODY, prueba eso, si no te funciona, mejor pones el code completo, porque no creo ser capaz de adivinar tu codigo para decirte el error :D.

Saludos !
  #3 (permalink)  
Antiguo 09/04/2005, 17:01
 
Fecha de Ingreso: marzo-2005
Ubicación: Sevilla
Mensajes: 277
Antigüedad: 19 años, 1 mes
Puntos: 2
he cambiado la funcion pos su codigo: quedaría asi:
el codigo es el siguiente:

dentro del actu.js:
document.write('<?php
$nombres;
$i=0;
if ($handle = opendir("noticias/titulares/")) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
$nombres[$i]=$file;
$i++;
}
}
closedir($handle);
}

$total=count($nombres);

$array_num=array();
foreach($nombres as $v){
if(ereg("resumennoticia([0-9]*).txt",$v,$out)){
$array_num[]=$out[1];
unset($out);
}
}
sort ($array_num);
$comienzo=$array_num[$total-1];

$final=$comienzo-5;

for ($j=$comienzo;$j>=$final;$j--){
$noticia="noticias/titulares/noticia" . $j . ".txt";
include($noticia);
}
?>'); //aqui termina el document.write

puede ser de los ; que javascript los entienda como suyos en vez de php, o esque para indicar los saltos de linea tengo k hacer \n y no hacer un slato directamente? o cual es el error??
  #4 (permalink)  
Antiguo 09/04/2005, 17:13
 
Fecha de Ingreso: diciembre-2004
Ubicación: Iquique, Chile
Mensajes: 150
Antigüedad: 19 años, 4 meses
Puntos: 0
Hola;

También estaba en el mismo problema, el porque nunca lo supe pero al quitar esto funcionaba "<", obviamente que los script no funcan.

Nos vemos.
  #5 (permalink)  
Antiguo 09/04/2005, 17:48
Avatar de jmn2k1  
Fecha de Ingreso: noviembre-2001
Ubicación: Buenos Aires...
Mensajes: 489
Antigüedad: 22 años, 5 meses
Puntos: 2
Eso que haces no anda.

El javascript se ejecuta del lado del cliente y PHP del lado del servidor. Haciendo Document.write(<?php.... no vas a lograr que se ejecute codigo PHP.
__________________
JmN
  #6 (permalink)  
Antiguo 09/04/2005, 18:21
Avatar de Danger_  
Fecha de Ingreso: diciembre-2004
Ubicación: Queretaro, México
Mensajes: 395
Antigüedad: 19 años, 4 meses
Puntos: 0
Cita:
Iniciado por jmn2k1
Eso que haces no anda.

El javascript se ejecuta del lado del cliente y PHP del lado del servidor. Haciendo Document.write(<?php.... no vas a lograr que se ejecute codigo PHP.

pero de que diablos HABLAS ! ? claro que lo ejecuta, prueba cone sto:
<script>
document.write("<?print 'hola';?>");
</script>

y aparece HOLA, al igual puedes hacer una consulta, lo que sea !!

el problema aqui es que mi buen amigo Manu_Leon no hace saltos de linea en su document.write.

POR EJEMPLO !!!
Código PHP:
<script>
document.write("<?print 'hola<br>'
print 
'de nuevo <b>HOLA !!!</b>';
?>");
</script>
RAYOS !!

Última edición por Danger_; 09/04/2005 a las 18:26
  #7 (permalink)  
Antiguo 10/04/2005, 05:29
 
Fecha de Ingreso: marzo-2005
Ubicación: Sevilla
Mensajes: 277
Antigüedad: 19 años, 1 mes
Puntos: 2
Seguro que es eso... intentare arreglar el código... Asias...
  #8 (permalink)  
Antiguo 10/04/2005, 05:43
 
Fecha de Ingreso: marzo-2005
Ubicación: Sevilla
Mensajes: 277
Antigüedad: 19 años, 1 mes
Puntos: 2
Llevabas razon, ese era el problema... k torpe soy XD... sin embargo se me imprime en pantalla esto:
=$final;$j--){ $noticia='noticias/titulares/noticia' . $j . '.txt'; include($noticia); } } ?>
no hay que ser demasiado listo para saber que el >=$final ese mayor o = me cierra el script de php... el caso eske lo necesito pero no se como solucionar este conflicto
  #9 (permalink)  
Antiguo 10/04/2005, 09:00
Avatar de Danger_  
Fecha de Ingreso: diciembre-2004
Ubicación: Queretaro, México
Mensajes: 395
Antigüedad: 19 años, 4 meses
Puntos: 0
jejejejeje, Manu_leon, como que te decides por aqui en javascript, o en el de php, que no se puede devatir un solo tema, en dos topicos diferentes :s ( ya respondi en el otro topico, mejor cerramos el tema en uno, no crees )
  #10 (permalink)  
Antiguo 10/04/2005, 13:03
 
Fecha de Ingreso: marzo-2005
Ubicación: Sevilla
Mensajes: 277
Antigüedad: 19 años, 1 mes
Puntos: 2
llevas razon; cerra el de php, creo que este es mas adecuado... al final estamso tratando sintaxios de javascript...
  #11 (permalink)  
Antiguo 12/04/2005, 21:45
 
Fecha de Ingreso: abril-2005
Mensajes: 1
Antigüedad: 19 años
Puntos: 0
No olvides la sintaxis de php

Prueba colocando un punto y coma (;) al final de la llamada de la funcion php
es decir en vez de: document.write('<?php mifuncion() ?>');
coloca: document.write('<?php mifuncion(); ?>');
  #12 (permalink)  
Antiguo 12/04/2005, 22:02
Avatar de jmn2k1  
Fecha de Ingreso: noviembre-2001
Ubicación: Buenos Aires...
Mensajes: 489
Antigüedad: 22 años, 5 meses
Puntos: 2
Cita:
pero de que diablos HABLAS ! ? claro que lo ejecuta, prueba cone sto:
Lo que vos me decis si funciona, pero como lo tenia el en el primer post del tema no.
La razon es simple, el archivo donde estaba <?php echo "blabla"?> era de extension js, a menos que el servidor este configurado para ejecutarlos con php eso no iba a funcionar nunca.
__________________
JmN

Última edición por jmn2k1; 12/04/2005 a las 22:23
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 16:04.