Buenas, llevo desde ayer con esto y no hay forma de solucionarlo , me he recorrido medio google y nada ha servido.
Mi situación es la siguiente:
Tengo un servidor Apache por XAMPP en local y quiero enviarle un valor (en este caso un nombre) al index.php.
index.php
Si lo hago abriendo el html de arriba funciona perfecto, me imprime el valor del campo nombre. En cambio si lo hago con Wininet no funciona:
En concreto me tira un "Undefined index : nom", como si no llegara a enviar el nom=paco. He revisado todos los resultados de las funciones, los handles se obtienen bien e incluso si en el .php pongo echo "Hola"; en internetFile obtengo el Hola, osea esta leyendo bien el .php lo que no obtiene es el clave/valor. También he probado con if isset($_POST["nom"]) pero no me sirve en este caso porque nunca escribe en $_POST["nom"].
Y no se que hacer más :S.
Perdonen si esto debería ir en el foro de PHP.
Mi situación es la siguiente:
Tengo un servidor Apache por XAMPP en local y quiero enviarle un valor (en este caso un nombre) al index.php.
index.php
Código (php) [Seleccionar]
<?php
echo $_POST["nom"];
?>
Código (html) [Seleccionar]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>PHP Code Tester</title>
</head>
<body>
<div id="div_form">
<form method = "post" action = "index.php" enctype="application/x-www-form-urlencoded">
<div id="div_datos_personales">
<fieldset>
<legend>PHP Code Tester</legend>
<div id="div_nombre">
<label id="label_nombre" for="nombre">Nombre:</label>
<input id="nombre" name="nom" type="text"/>
</fieldset>
</div>
<div id="div_submit">
<button id="submit" >Enviar</button>
</div>
</form>
</div>
</body>
</html>
Si lo hago abriendo el html de arriba funciona perfecto, me imprime el valor del campo nombre. En cambio si lo hago con Wininet no funciona:
Código (cpp) [Seleccionar]
int main(){
int Resultado;
char internetFile[256];
HINTERNET hInternet, hInternet2, hInternet3;
DWORD bytesRead;
hInternet = InternetOpenA("Firefox", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
hInternet2 = InternetConnectA(hInternet, "localhost", 80, 0, 0, INTERNET_SERVICE_HTTP, 0, 0);
hInternet3 = HttpOpenRequestA(hInternet2, "POST", "index.php", 0, 0, 0, INTERNET_FLAG_RELOAD, 0);
Resultado = HttpSendRequestA(hInternet3, "Content-Type:application/x-www-form-urlencoded", 0xFFFFFFFF, "nom=paco", 0x8);
InternetReadFile(hInternet3, internetFile, 250, &bytesRead);
return 0;
}
En concreto me tira un "Undefined index : nom", como si no llegara a enviar el nom=paco. He revisado todos los resultados de las funciones, los handles se obtienen bien e incluso si en el .php pongo echo "Hola"; en internetFile obtengo el Hola, osea esta leyendo bien el .php lo que no obtiene es el clave/valor. También he probado con if isset($_POST["nom"]) pero no me sirve en este caso porque nunca escribe en $_POST["nom"].
Y no se que hacer más :S.
Perdonen si esto debería ir en el foro de PHP.