Codice PHP:
<?php
// INIZIO CONFIGURAZIONE
$url = 'http://www.example.com/folder/registration.php';
$agent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1';
$post_data = array();
$post_data['nickname'] = "mynick";
$post_data['email'] = "myemail@example.com";
$post_data['confirm'] = "1"; // Per una checkbox il valore 0 o false (quale dei due) tolgono la spunta?
$post_data['ads'] = "0";
foreach($post_data as $subarray) {
list($foo, $bar) = $subarray;
$bar = urlencode($bar);
$postedfields[] = "$foo=$bar";
}
$urlstring = join("\n", $postedfields);
$urlstring = ereg_replace("\n", "&", $urlstring);
// FINE CONFIGURAZIONE
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $urlstring);
curl_exec($ch);
curl_close($ch);
?>
I dati post li stò spedendo con questo array. Sono 4 campi: due di testo (non specificato nel codice html, quindi suppongo predefinito) e 2 sono checkbox .. il "name" è il "nome" dell'array (nickname, email, confirm, ads) E' giusta questa cosa: name = "nome array"? E' giusto mettere i valori che ho messo (email..) e .. UNA CHECKBOX COME LA TRATTO? E' vero che per darle valore "non spuntato" devo omettere il post? Funziona anche se nell'html c'è un checked="true" ?
NEL FOREACH, E' GIUSTO LASCIARE $foo e $bar ??