申し訳ありませんPHPに初心者の方はカールフォームを送信しようとしていますが、最初のサブミット後に結果を保持します。これらのボタンを表示し、どのボタンがクリックされたかに応じて、サブミットはポップアップで第2の値を表示します。その値をポップアップに正しく渡しますが、2回目の送信がクリックされたときに画面が更新されないようにします。PHPのカールフォームの送信後にリフレッシュしないでください、またはxmlhttprequest xmlhttprequest
ページは、あなたがAJAX電話をかける必要があり、リフレッシュさせたくない場合は任意のポインタは
<?php session_start();
?>
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<SCRIPT TYPE="text/javascript">
function popup(mylink, windowname)
{
if (! window.focus)return true;
var href;
if (typeof(mylink) == 'string')
href=mylink;
else
href=mylink.href;
window.open(href, windowname, 'width=700,height=235,scrollbars=yes');
return false;
}
</SCRIPT>
<form action="index.php" method="post">
CHECK DOMAIN:
<input type="text" input name="checkDomain" value="<?php echo isset($_POST['checkDomain']) ? $_POST['checkDomain'] : '' ?>"/>
<button type="submit" value="Submit">Check</button>
<?php
$DomainArray = array("ie","com","net");
//IF WE WANT TO PARSE XML RESPONSE
function produce_XML_object_tree($raw_XML) {
libxml_use_internal_errors(true);
try {
$xmlTree = new SimpleXMLElement($raw_XML);
} catch (Exception $e) {
// Something went wrong.
$error_message = 'SimpleXMLElement threw an exception.';
foreach(libxml_get_errors() as $error_line) {
$error_message .= "\t" . $error_line->message;
}
trigger_error($error_message);
return false;
}
return $xmlTree;
}
if(!empty($_POST)) {}{
if(!empty($_POST["checkDomain"])) {
$checkDomain = $_POST["checkDomain"];
if(!empty($_POST["form2-submit"])) {
$whoIs = $_POST['form2-submit'];
}
if ($checkDomain !=null || $whoIs !=null)
{
//Check if a TLD has been entered
if (strpos($checkDomain, '.') !== FALSE)
{
$domain = substr($checkDomain, 0, strpos($checkDomain, "."));
$DomainList = substr($checkDomain, strpos($checkDomain, ".")+1);
$url = 'check1';
}
else if (!empty($_POST['form2-submit'])) {
$WhoisDomain = $DomainArray[$whoIs-1];
$url = 'check2';
}
else{
echo ' Checking all domains:';
$DomainList = implode(",",$DomainArray);
$url = 'check3';
}
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$xml = curl_exec($ch);
curl_close($ch);
$cont = produce_XML_object_tree($xml);
}
$_SESSION["otherXML"] =$xml;
foreach($cont->Domain as $domain){
print '<br/>'.(string)$domain;
}
$index = 0;
foreach($cont->RRPText as $rRPText){
$index++;
print '<br/>'.(string)$rRPText;
//echo 'index'.$index;
if ($rRPText == "Domain not available")
{
print ' <button type="submit" name="form2-submit" onclick="popup(\'popup.php\')" value="'.$index.'">whois </button> ';
}
}
}
?>
</form>
</body>
</html>
提出時に「*画面の更新*」を希望しない場合は、[非同期リクエスト](https://developer.mozilla.org/en-US/docs/Web)を調べる必要があります。/API/XMLHttpRequest/Synchronous_and_Asynchronous_Requests) – Marcus
ありがとう私は非同期http要求をしようとしている – Brian