我想在输入上方创建一个文本而不是那些echo 例如:如果有效,则用户提交电子邮件,如果没有显示另一个文本。
if(isset($_POST['submitmailforpw'])){
$url2 = 'someurl';
$mailforpw = $_REQUEST['mailforpw'];
$link = mysqli_connect("localhost", "root", "", "database");
if($link){
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$sqlCmd = "Select * from tb where userName='" . $mailforpw . "'";
$result = mysqli_query($link, $sqlCmd);
if(mysqli_num_rows($result) > 0){
$row = mysqli_fetch_array($result);
$idC = base64_encode($row['idC']);
$email = base64_encode($mailforpw);
$values = $idC . "||" . $email ;
$url = $url2 . 'values=' . $values ;
$result = do_post_request($url, "");
$sendOrNot = explode( '||m7ip||enviado||' , $result);
if($sendOrNot[1] == "true"){
echo "enviado";
}else{
echo "nao enviado";
}
}else{
//exit(); Não existe na bd
}
}else{
//exit();
}
}else{
//exit();
}
HTML
<div>
<center><form action="" method="post">
<ul class="form-style-1">
<li>
<label>Email <span class="required">*</span></label>
<input type="email" name="mailforpw" class="field-long" required />
</li>
<li>
<input class="button button-xlarge tright noleftmargin nobottommargin fadeInUp animated" type="submit" name="submitmailforpw" value="Submeter" />
</li>
<li>
<div class="required" id="emailNaoEncontrado">
</div>
</li>
</ul>
</form></center>
</div>
js我删除它正在工作,但我尝试的是echo'(javascript thing)';它会起作用,但是对于越野车,尝试将php放到最后;将js echo放在teh文件的末尾,并通过函数等调用它... 如果这个问题已经被提出并且已经提出过,那么请提前判断。
答案 0 :(得分:0)
而不是:
if($sendOrNot[1] == "true"){
echo "enviado";
}else{
echo "nao enviado";
}
...将消息存储在PHP变量中:
if($sendOrNot[1] == "true"){
$msg = "enviado";
}else{
$msg = "nao enviado";
}
然后将HTML部分放在PHP部分下面,并在其中添加一些PHP,如下所示:
<li>
<?php
if (isset($msg)) echo "<div>" . htmlspecialchars($msg) . "</div>";
?>
<label>Email <span class="required">*</span></label>
<input type="email" name="mailforpw" class="field-long" required />
</li>
对htmlspecialchars($msg)
的调用是一种预防措施,当您的字符串包含HTML中具有特殊含义的字符时。但是你的字符串没有<
或&
,那么就没有必要包含它,你可以$msg
。