Foros del Web » Programando para Internet » PHP »

Ayuda!!

Estas en el tema de Ayuda!! en el foro de PHP en Foros del Web. Hola a Todos: Soy un novato en esto del php y tengo un gran problema en mi trabajo, de partida necesito saber como puedo desde ...
  #1 (permalink)  
Antiguo 18/11/2003, 01:23
 
Fecha de Ingreso: noviembre-2003
Mensajes: 7
Antigüedad: 20 años, 5 meses
Puntos: 0
Exclamación Ayuda!!

Hola a Todos:

Soy un novato en esto del php y tengo un gran problema en mi trabajo, de partida necesito saber como puedo desde php conectarme via SOAP a un webservice para extraer informacion para lo cual no he encontrado casi nada de informacion.

Segundo tengo un gran problema con lo de las SID, aun no logro comprender bien como funciona las variables de session en php, puesto que he intentado hacer un simple formulacion que envia un user y pass a una pagina php y esta las guarda en una variable de session, pero al redireccionar a otra pagina de php y intentar rescatar los datos me dice que _SESSION no esta definido, y la verdad no entiendo porque, sera que tengo que colocar en todas las paginas donde usare las variables de session el session_register(), porque lo otro es que si lo coloco este me reclama diciendome que no puede que no puede reenviar no se que cosa...

aqui estan los codigo:
archivo inicio.php
<?
session_start();
?>
<html>
<script language="javascript">
function Valida()
{
if(autent.user.value!="")
{
if(autent.pass.value!="")
return true;
}
alert("Error, verifique el nombre de usuario y contraseña")
return false;
}
</script>
<body>
<form action="login.php" method="post" name="autent" onsubmit="return(Valida());">
<p align="center">
<font face="verdana" size="4">Bienvenido</font>
<table>
<tr><td>Nombre Usuario</td><td><input type="text" name="user" value=""></td></tr>
<tr><td>Password</td><td><input type="password" name="pass" value=""></td></tr>
</table>
<input type="submit" value="Enviar">
</p>
</form>
</body>
</html>


login.php
<?php
if($_REQUEST['user']=="aaaa"&&$_REQUEST['pass']=="aaaa")
{
$user = $_REQUEST["user"];
$pass = $_REQUEST["pass"];
$_SESSION["user"] = $user;
$_SESSION["pass"] = $pass;
header("Location: conte.php");
}else{
header("Location: inicio.php");
}
?>

conte.php
<html>
<body>
<p align="center">
<?
echo $_SESSION["user"];
echo $_SESSION["pass"];
?>
</p>
</body>
</html>


Quizas yo lo este haciendo todo mal (lo mas seguro), pero la verdad no entiendo bien la logica de como funciona esto, por si acaso active las opciones de use_cookie = 1 y use_trans_sid = 1 porque algo lei que para transmitir el SID de una pagina a otra podia hacerse por URL o Cookie (la cual cluster dice es la mejor), pero lo que no entiendo, el no es capas de captar por si solo que se inicio una session y rescatar los datos, o yo tengo que por cada parte usar el session_register() porque tambien me alega por eso.... en si tengo una gran confusion .

Si alguien me pudiese explicar como funciona esto de las variables de session y su correcto uso se lo agradeceria eternamente, piensen que vengo del mundo ASP y al parecer el manejo de esto no es igual .

Con respecto a lo SOAP, me gustaria saber si alguien ha hecho esto y como podria realizar este tipo de codigo.

Cualquier ayuda o pista se las agradecere miles y por si acaso lei el manual pero no entendi ni uno

Gracias por todo y disculpen las molestias.

Atte
Roitt
  #2 (permalink)  
Antiguo 18/11/2003, 02:06
 
Fecha de Ingreso: noviembre-2003
Mensajes: 7
Antigüedad: 20 años, 5 meses
Puntos: 0
Creo que ya respondi a mi problema de las sessiones, por lo que fui viendo es necesario cada vez que usare las variables decirle session_start(), y el problema de Warning: session_start(): Cannot send session cookie - headers already sent by es porque al igual que la instruccion header() necesita que sea lo primero en ejecutarce antes que cualquier salida sea efectuada.

de igual forma me gustaria una buena explicacion porque esto es algo que lo asimile como una dogma nada mas y me falta clarificarla para no cometer errores en desarrollo.

Pero aun me queda el tema de SOAP que ver el que me tiene bastante preocupado porque solo encontre algo de PHP-SOAP el cual bajo los binarios de Win32 y trae unas dlls....pero que hago con ellas no se (sera para meterlas en algo??), me imagino que dentro de la configuracion de extesion o me equivoco?


bueno chicos de igual forma mil gracias por la ayuda que me puedan brindar, saludos a todos.

(y como hace tutu-tutu...cluster entendera )

Chao amigos
  #3 (permalink)  
Antiguo 18/11/2003, 07:06
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
El tema de usar session_start() .. es simplemente para indicarle a tu script que a partir de ahí vas a usar variables de sesión .. Ademas ..esa función si la llamas así (sin parámetros) se tomará el SID que venga propagado de anteriores páginas. Por eso, si en alguna página de tu secuencia (donde usas esas variables de sesión) se te olvida usarla .. el SID se reinicia con uno nuevo, por ende la anterior sesión (bajo su SID único) pierdes las variables (simplemente están en otra sesión).

PHP en su configuración (php.ini) dispone de una directiva para no tener que usar session_start() en todas tus páginas .. le llama:
session.auto_start .. pero, es recomendable que uses session_start() siempre y cuando requieras de sesiones. Optimizaras los recursos del servidor.

El hecho de que session_start() deba estar por encima de algo de HTML/etc enviado al navegador suele ser por dos razones:

1) Las sesiones envian por defecto unas cabeceras al navegador tipo "private" o similares (session.cache_limiter).
2) Si usas session.use_cookies .. (a 1) ya estás enviando más cabceras (de cookeis) al navegador ...

Como veras .. no hay "dogmas" sólo hay que hechar un vistazo a tu php.ini (tema sesiones) y a la documentación oficial de PHP sobre sesiones para ver como trabajan "técnicamente" ..

--------

El tema de SOAP .. no es mi fuerte .. pero creo haber visto classes (en www.phpclasses.org) que implementan servidores SOAP bajo PHP (usando sockets) ... Pero, si lo tienes bajo extensiones mejor todavía.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 18/11/2003, 08:31
 
Fecha de Ingreso: noviembre-2003
Mensajes: 7
Antigüedad: 20 años, 5 meses
Puntos: 0
Mil gracias Cluster, ya tengo mas claro el tema de las sessiones.

Sobre el tema de SOAP para consumo de webservices (no para que genere WSDL), lo estoy viendo ahora, mirare la informacion que me das de referencia y en cuanto tenga una solucion al entuerto la posteo al foro porque me imagino sera de interes comun....(no puede ser que el codigo libre quede atras en todo cierto? ).

Gracias nuevamente Cluster y les estare contando sobre mis avances.

Saludos a todos
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 14:49.