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<?php
echo $_POST["nom"];
?>
<!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:
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.