2013-12-25 8 views
0
<div class="col" style="border-right:none; color: #FFFFFF;"> 
    <form id="form-search" method="post" action="<?php echo $_SERVER['PHP_SELF'];?>"> 
     <span> 
      <span class="style2">Enter you email here</span>: 
     </span> 
     <input name="email" type="email" id="email" required/> 
     <input type="submit" value="subscribe" class="submit" style="height:30px;"/> 
    <?php 
      if($_POST['email']!="") 
      { 
       mysql_connect("localhost","",""); 
       mysql_select_db(""); 
       error_reporting(E_ALL && ~E_NOTICE); 
       $email=$_POST['email']; 
       $sql="INSERT INTO newsletter_email(email) VALUES ('$email')"; 
       $result=mysql_query($sql); 
       if($result){ 
        echo "You have been successfully subscribed."; 
       } 
       if(!$sql) 
        die(mysql_error()); 
       mysql_close(); 
      } 
     ?> 

    </form> 
</div> 

После того, как пользователь подписался, я хочу заменить свою форму подписки и отобразить инструкцию эха.Заменить div другим div в ajax/javascript?

Этот код работает полностью нормально и очень хорошо; просто хочу немного больше преимуществ с этим .. ..

это показывает, как этот enter image description here

Но я хочу, чтобы показать, как этот enter image description here

my code now

<div class="col" style="border-right:none; color: #FFFFFF;"> 
        <script> 
        var form = $('#form1'); 
    $.ajax{ 
     type:form.attr('method'), 
     url:form.attr('action'), 
data:$("#form1").serialize(), 
    success: function(data){ 
    if(data=="You have been successfully subscribed."){ 
        $(".col").html("<div>Welcome</div>") 

    } 

    } 
        </script> 

<form id="form1" method="post" action="index.php"> 
<span><span class="style2">Enter you email here</span>:</span> 
<input name="email" type="email" id="email" required/> 
<input type="submit" value="subscribe" class="submit" style="height:30px;"/> 
      <?php 
if($_POST['email']!="") 
{ 
mysql_connect("localhost","",""); 
mysql_select_db(""); 
error_reporting(E_ALL && ~E_NOTICE); 
$email=$_POST['email']; 
$sql="INSERT INTO newsletter_email(email) VALUES ('$email')"; 
$result=mysql_query($sql); 
if($result){ 
    echo "You have been successfully subscribed."; 
} 
if(!$sql) 
die(mysql_error()); 
mysql_close(); 
} 
?> 

</form> 
    </div> 

ответ

0

после отправки Аякса вы можете просто спрячьте ввод электронной почты и кнопку

$("#email").hide(); 

================================================================================================================================================== ===========================

<form id="form-search" method="post" onsubmit="return myFunction()" action="<?php echo $_SERVER['PHP_SELF'];?>"> 

затем где-то на странице

<script> 
function myFunction(){ 
$("#email").hide(); 
$(".style2").hide(); 
$(".submit").hide(); 

return true; 
} 
</script> 
+0

я ве не используется Ajax вообще .. краткий код пожалуйста ?? –

+0

http://api.jquery.com/jQuery.ajax/ вы можете сослаться на это или просто добавить его как JS –

+0

или вы можете добавить onsubmit в свою форму и поместить функцию JS, чтобы скрыть его. –

0

редактировать ваш PHP-код как это;

if($result){ 
    <script> 
     $(".class").hide(); // get input class name 
    </script> 
    echo "You have been successfully subscribed."; 
} 
+1

, но мы не можем использовать скрипт в php в том случае, если инструкция na –

1

Аякса используется в качестве агента между HTML и PHP, Детали, введенные в HTML-форму подается на PHP через AJAX и результат, полученный от PHP отправляется обратно через ajax.This может быть сделано с помощью самого РНР, но использование ajax создает не мерцающую страницу, т. е. часть веб-страницы обновляется без полного запроса.

var form = $('#form1'); 
     $.ajax{ 
      type:form.attr('method'), 
      url:form.attr('action'), 
    data:$("#form1").serialize(), 
     success: function(data){ 
     if(data=="You have been successfully subscribed."){ 
         $(".col").html("<div>Welcome</div>") 

     } 

     } 

HTML код:

 <HTML> 
     <BODY> 
     <div class="col"> 
      <form id="form1" action="index.php" method="POST"> 
       <input name="email" type="email" id="email" required/> 
       <input type="submit" value="subscribe" class="submit" style="height:30px;"/> 
      </form> 
     </div> 
     </body> 
     </html> 

Обновить код Аякса

var form = $('#form1'); 
     $.ajax{ 
      type:form.attr('method'), 
      url:form.attr('action'), 
    data:$("#form1").serialize(), 
     success: function(data){ 
     if(data=="You have been successfully subscribed."){ 
         $(".col").html("<div>Welcome</div>") 
        }  
     }, 
      error: function(xhr, status, error) { 
        var err = eval("(" + xhr.responseText + ")"); 
        alert(err.Message); 
       } 
     } 
+0

hey wat u ve описана, это то, что я хочу, но ур код работает dint –

+0

то, что внутри эха «Успех» должно быть таким же внутри if (data == «Success»), в противном случае он не будет работать – CY5

+0

Даже если он не работает, проверьте свою консоль браузера, чтобы увидеть ошибку jquery или покажите мне свой код – CY5

Смежные вопросы