Foros del Web » Programando para Internet » PHP »

Responde lo mismo respuesta servidor php+javascript

Estas en el tema de Responde lo mismo respuesta servidor php+javascript en el foro de PHP en Foros del Web. Hola, buenos dias, necesito la siguiente ayuda. Resulta que tengo los siguientes archivos: - ajax.js - index.php - comp_activ.php El problema que tengo es, el ...
  #1 (permalink)  
Antiguo 12/09/2012, 04:39
tukymix
Invitado
 
Mensajes: n/a
Puntos:
Responde lo mismo respuesta servidor php+javascript

Hola, buenos dias, necesito la siguiente ayuda. Resulta que tengo los siguientes archivos:

- ajax.js
- index.php
- comp_activ.php

El problema que tengo es, el index.php funciona bien, ok? entonces cuando el usuario se crea el registro de la radio se guarda perfectamente y se va al apartado de registro en el cual manda <script> parent.enviarvariable('.$idradio.'); </script> ok? eso manda a la funcion de ajax.js el id de la radio que se a creado mientras que se queda en la pantalla de espera de una respuesta de ajax.js, entonces el ajax.js envia cada 5 segundos manda a comp_activ.php el id de la radio para que este compruebe cada 5 minutos si se ha activado la emisora o no, entonces la cuestion es que el archivo comp_activ.php detecta que en la base de datos esa emisora tiene activado = 0 pues responde con un KO y si activado = 1 responde con un OK, ahora, la cuestion es que el ajax.js auqnue este activada la emisora, siempre da la respuesta de KO, se que el problema esta en el archivo ajax.js pero nose cierto que es, el archivo index.php y comp_activ.php funcionan perfectamente, pero aun asi el archivo comp_activ.php aunque responda OK, el archivo ajax.js siempre coge respuesta de KO, a continuacion os dejo los scripts, ayudarme porfavor.

index.php :
-----------------------
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Formulario de Contacto</title>
<script src="js/default.js"></script>
<script src="js/ajax.js"></script>

<style>
body {
background-image: url(img/fondo.png);
background-repeat: repeat;
}

#titulo{ margin:auto; font-weight:bold; color:#999; }
#contenedor{width:570px; height:300px; border:2px solid #C0C0C0; padding-left:3px; padding-top:5px; left:50%; top:50%; background-color:#DCDCDC; position:absolute; margin-top: -150px; margin-left: -300px; }
#form1{font-family:Arial, Helvetica, sans-serif; font-size:11px;}
#inp1, #inp2, #inp3, #inp4{
background-image:url(img/fondoinput.GIF);
background-repeat:no-repeat;
background-color: #DCDCDC;
border: none;
width: 205px;
height: 32px;
padding-left: 3px;
padding-top: 6px;
}

#inp8{
background-repeat:no-repeat;
border: none;
width: 140px;
height: 29px;
}

#inp8{background-image:url(img/enviar.gif); cursor:hand;}

input:focus{
background-color: transparent;
}

#divtextarea{ float:right; margin-right:10px; width:342px; height:83px}

#estado{ float:left; width:80px; font-size:9px; }
#estado1{ float:right; width:262px; font-weight:bold; }
#estadoerrores{ float:right; width:262px; font-weight:bold; }
</style>
</head>

<body>
<?
include("conexion.php");
$error="";
if(isset($_POST["enviar"])){

$idradio = rand(1,999999999);
$nusuario = $_POST['nusuario'];
$nemisora = $_POST['nemisora'];
$urlemisora = $_POST['urlemisora'];
$logoemisora = $idradio.$HTTP_POST_FILES['logoemisora']['name'];
$webemisora = $_POST['webemisora'];

if($nusuario == "" || $nemisora =="" || $urlemisora =="" || $webemisora ==""){
$error = "Porfavor, rellena todos los campos....";
$nerror=1;
}else{

$tipo_archivo = $HTTP_POST_FILES['logoemisora']['type'];
if(!strpos($tipo_archivo, "bmp")) {
$error = "La imagen no es del tipo bmp...";
$nerror=1;
}else{

mysql_query("INSERT INTO radios (idradio,nusuario,nemisora,urlemisora,logoemisora, webemisora,activado) VALUES ('$idradio','$nusuario','$nemisora','$urlemisora', '$logoemisora','$webemisora','0') ");

move_uploaded_file($HTTP_POST_FILES['logoemisora']['tmp_name'], "logosradios/".$logoemisora);

}
}

if($nerror==1){
$nerror=0;
echo'<div id="contenedor"><div id="titulo">Registro Emisora Radio SL</div><br />
<form id="form1" name="form1" action="index.php" method="post" enctype="multipart/form-data">
<div id="divtextarea">
Logo Emisora:<br /><br />
<div id=salidalogoimagen></div>
<input id="inp0" type="file" name="logoemisora" onchange="showImage(this)"><br /><br /><br />
<div id=estadoerrores>- '.$error.' -</div>
</div>
<div id="datos">
Nombre y Apellido SL:<br />
<input id="inp1" type="text" name="nusuario" maxlength="25" /> <br />
Nombre Emisora:<br />
<input id="inp2" type="text" name="nemisora" maxlength="25" /> <br />
URL Emisora:<br />
<input id="inp3" type="text" name="urlemisora" maxlength="25" /> <br />
Web Emisora:<br />
<input id="inp4" type="text" name="webemisora" maxlength="25" /> <br />
<input id="inp8" type="submit" name="enviar" value=""/> <br />
</div>
</form>
</div> ';

}else{
echo'<script> parent.enviarvariable('.$idradio.'); </script><div id="contenedor"><div id="titulo">Registro Emisora Radio SL</div><br />
<div id="divtextarea">
Logo Emisora:<br /><br />
<div id=salidalogoimagen><img src="logosradios/'.$logoemisora.'" /></div>
<br /><br /><br />
<div id=estado>Estado Emisora: </div>
<div id=estado1></div>
</div>
<div id="datos">
Nombre y Apellido SL:<br /><b>'.$nusuario.'</b><br /><br />
Nombre Emisora:<br /><b>'.$nemisora.'</b><br /><br />
URL Emisora:<br /><b>'.$urlemisora.'</b><br /><br />
Web Emisora:<br /><b>'.$webemisora.'</b><br /><br /><br />
</div>
</div>';}
}else{
echo'<div id="contenedor"><div id="titulo">Registro Emisora Radio SL</div><br />
<form id="form1" name="form1" action="index.php" method="post" enctype="multipart/form-data">
<div id="divtextarea">
Logo Emisora:<br /><br />
<div id=salidalogoimagen></div>
<input id="inp0" type="file" name="logoemisora" onchange="VerImagen(this)"><br /><br /><br />
<div id=estadoerrores>- '.$error.' -</div>
</div>
<div id="datos">
Nombre y Apellido SL:<br />
<input id="inp1" type="text" name="nusuario" maxlength="25" /> <br />
Nombre Emisora:<br />
<input id="inp2" type="text" name="nemisora" maxlength="25" /> <br />
URL Emisora:<br />
<input id="inp3" type="text" name="urlemisora" maxlength="25" /> <br />
Web Emisora:<br />
<input id="inp4" type="text" name="webemisora" maxlength="25" /> <br />
<input id="inp8" type="submit" name="enviar" value=""/> <br />
</div>
</form>
</div> ';
}
?>
</body>
</html>



ajax.js :
--------------------

// JavaScript Document
function refreshdiv(idr){
var xmlHttp;
porcion="";
try{ xmlHttp=new XMLHttpRequest(); }
catch (e){
try{ xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); }
catch (e){
try{ xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); }
catch (e){
alert("Tu explorador no soporta AJAX.");
return false;
}
}
}

var nocacheurl = "./comp_activ.php?idradio="+idr;

xmlHttp.onreadystatechange=function(){
if(xmlHttp.readyState== 4 && xmlHttp.readyState != null){

var porcion = xmlHttp.responseText.substring(0,3);

alert(porcion);

if(porcion == "KO"){ document.getElementById('estado1').innerHTML= "DESACTIVADO"; }
if(porcion == "OK"){ document.getElementById('estado1').innerHTML= "ACTIVADO"; }

porcion="";
setTimeout('refreshdiv('+idr+')',5*1000);
}
}
xmlHttp.open("GET",nocacheurl,true);
xmlHttp.send(null);
}


function getXMLHTTPRequest() {
try {
req = new XMLHttpRequest();
} catch(err1) {
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
} catch (err2) {
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch (err3) {
req = false;
}
}
}
return req;
}


var http = getXMLHTTPRequest(); // creo una instancia del objeto XMLHTTPRequest.

function enviarvariable(idr) { // funcion encargada de inviar la variable al archivo php llamado index.php.
var url = './comp_activ.php?idradio=' + idr; // creación de la URL.
http.open("GET", url, true); // fijando los parametros para el envío de datos.
http.onreadystatechange = handler; // Qué función utilizar en caso de que el estado de la petición cambie.
http.send(null); // enviar petición.
setTimeout('enviarvariable('+idr+')',5000);
}

function handler() {
if (http.readyState == 4) {
if(http.status == 200) {
alert(http.responseText); // El texto de respuesta del archivo index.php lo muestra como una alerta.
}
}
}


comp_activ.php :
--------------------------

<?
include('conexion.php');
$idradio=$_GET["idradio"];

$datos=mysql_query("SELECT * FROM radios WHERE idradio='$idradio' ");
if($dato=mysql_fetch_array($datos))
{
$activado = $dato["activado"];
if($activado==0){ echo"KO"; }
if($activado==1){ echo"OK"; }
}

?>


GRACIAS DE ANTEMANO !!!
  #2 (permalink)  
Antiguo 12/09/2012, 04:42
tukymix
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Responde lo mismo respuesta servidor php+javascript

PERDONAD !!!

el archivo ajax.js es el siguiente:
-------------------------------------------------
// JavaScript Document
function getXMLHTTPRequest() {
try {
req = new XMLHttpRequest();
} catch(err1) {
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
} catch (err2) {
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch (err3) {
req = false;
}
}
}
return req;
}


var http = getXMLHTTPRequest(); // creo una instancia del objeto XMLHTTPRequest.

function enviarvariable(idr) { // funcion encargada de inviar la variable al archivo php llamado index.php.
var url = './comp_activ.php?idradio=' + idr; // creación de la URL.
http.open("GET", url, true); // fijando los parametros para el envío de datos.
http.onreadystatechange = handler; // Qué función utilizar en caso de que el estado de la petición cambie.
http.send(null); // enviar petición.
setTimeout('enviarvariable('+idr+')',5000);
}

function handler() {
if (http.readyState == 4) {
if(http.status == 200) {
alert(http.responseText); // El texto de respuesta del archivo index.php lo muestra como una alerta.
}
}
}
  #3 (permalink)  
Antiguo 12/09/2012, 05:36
 
Fecha de Ingreso: mayo-2006
Mensajes: 475
Antigüedad: 18 años, 6 meses
Puntos: 58
Respuesta: Responde lo mismo respuesta servidor php+javascript

Sin formato en el texto es realmente imposible que alguien pueda leer tanto código :). Puedes editarlo y darle al highlight o similar?
  #4 (permalink)  
Antiguo 13/09/2012, 04:01
tukymix
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Responde lo mismo respuesta servidor php+javascript

no me deja modificar el mensaje, jops

Etiquetas: formulario, html, mysql, registro, responde, respuesta, sql, variables, usuarios
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 01:12.