depuis quelques jour je dev une api , c’est du php et l'idée c'est :
fait un Get pour save le cookie en var
jai intègre curl et ca post ensuite un header qui contien $data donc les valeurs des input de mon html.
Jusque là tout vas bien mais problème
Si je met en “action” dans mon form html “api.php” je vois mon Post partir en localhost avec burp
Et si je met la valeur de action vers l*ip de mon app ça marche mais ça m’ouvre une page sur le panel admin de l’app
J’aimerais que mon api fasse un post vers le serveur avec le cookie mis à jour à chaque request (ça marche déjà ca) mais en backend genre aucun visu
Si quelqun peut m’aider à corriger mon code ca serait gentil
Thx all
/////////////////////////////////////////CODE HTML ////////////////////////////////////////INDEX.PHP/////////////////////////////////////////
<!DOCTYPE html>
<html>
<head>
<title> API</title>
</head>
<body>
<form method="POST" action="Urldemonapp" enctype="multipart/form-data">
<p>Votre Prenom : <input type="text" name="first_name"></p>
<p>Votre Nom de famille : <input type="text" name="last_name"></p>
<p>Votre Adresse email : <input type="text" name="email"></p>
<p>Votre Lieux de naissance : <input type="text" name="place_of_birth"></p>
<p>Votre Numéro de mobile : <input type="text" name="phone"></p>
<p>Votre Date de naissance : <input type="date" name="birthday"></p>
<p>Votre Pays : <input type="text" name="country"></p>
<p>Votre Canton : <input type="text" name="canton"></p>
<p>Votre NPA : <input type="text" name="Npa"></p>
<p>Votre Lieu : <input type="text" name="city"></p>
<p>Votre Adresse : <input type="text" name="address"></p>
<p>Votre Complement d'adresse : <input type="text" name="Complement_adresse"></p>
<input type="submit" name="submit" value="submit"/>
</form>
<head>
</body>
</html>
/////////////////////////////////////////CODE PHP/////////////////////////////////////////API.PHP/////////////////////////////////////////
<?php
require_once "index.html";
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////INPUTS VAR ///////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$prenom = htmlspecialchars($_POST['first_name']);
$Nomdefamille = htmlspecialchars($_POST['last_name']);
$Adresse_email = htmlspecialchars($_POST['email']);
$Lieu_de_naissance = htmlspecialchars($_POST['place_of_birth']);
$Pays = htmlspecialchars($_POST['country']);
$Date_de_naissance = htmlspecialchars($_POST['birthday']);
$Canton = htmlspecialchars($_POST['canton']);
$Adresse = htmlspecialchars($_POST['address']);
$Complement_adress = (int)$_POST['Complement_adresse'];
$Numero_de_telephone = (int)$_POST['phone'];
$NPA = (int)$_POST['Npa'];
$city = (int)$_POST['city'];
$data = [
"prenom" => $prenom,
"Nomdefamille" => $Nomdefamille,
"Adresse_email" => $Adresse_email,
"Lieu_de_naissance" => $Lieu_de_naissance,
"Pays" => $Pays,
"Date_de_naissance" => $Date_de_naissance,
"Numero_de_telephone" => $Numero_de_telephone,
"NPA" => $NPA,
"Canton" => $Canton,
"Pays" => $Pays,
"Adresse" => $Adresse,
"Complement_adress" => $Complement_adress,
];
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////INPUTS VAR ///////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//-//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////COOCKIE VAR AUTOUPDATE/////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$url = "Urldemonapp";
$curlObj = curl_init();
//curl_setopt($curlObj, CURLOPT_URL, $url);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_HEADER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($curlObj);
preg_match_all('/^Set-Cookie:\s*([^;]*)/mi',
$result, $match_found);
$cookies = array();
foreach($match_found[1] as $item) {
parse_str($item, $cookie);
$cookies = array_merge($cookies, $cookie);
}
curl_close($curlObj);
////////////////////////////////////////////Save the Array string as string only///////////////////////////////////////////////////////
ob_start();
echo implode($cookies);
$HaveAcookie = ob_get_contents();
ob_end_clean();
echo $HaveAcookie;//Juste pour test enlever ca apres
////////////////////////////////////////////Save the Array string in as string only///////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////CURL VAR INCREMENT/////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function POST($DT, $data, $headers)
{
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $DT,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 0,
CURLOPT_POST => true,
));
if (!empty($headers)) {
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
}
$response = curl_exec($curl);
$errno = curl_errno($curl);
if ($errno) {
return false;
}
curl_close($curl);
return $response;
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////CURL VAR INCREMENT///////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////HEADER POST CONF//////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if(isset($_POST['submit']))
if (function_exists('curl_file_create'))
$headers = ["Cookie: ci_session=$HaveAcookie",
"POST /dashboard/users/create HTTP/1.1",
"Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryYIYW2Nc6Mp4KoNyH",
"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
"Accept-Language: fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7",
"User-Agent: TEST",
"Accept-Encoding: gzip, deflate",
];
POST("Urldemonapp", $data, $headers);
header("Location: index.html");
exit();
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////HEADER POST CONF///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////.