php
  • html
  • 2016-08-27 34 views 0 likes 
    0

    我试图得到一个弹出消息,说明它是否成功提交或不需要转到其他页面。用php提交表单后弹出消息

    现在,Chrome向我弹出消息,但它将我重定向到之后的空白页面。

    这是我目前的代码。

    <?php 
    include "header.php"; 
    include "conexao.php"; 
    echo "<h1 align='center'>Pagina para alterar produtos</h1><div class='container'><hr>"; 
    $referencia=$_GET['id']; 
    
    
    $sql = "SELECT * "; 
         $sql = $sql . " FROM tb_produto "; 
         $sql = $sql . " WHERE pr_codigo='".$referencia."'"; 
         $produtos = $db->query($sql); 
         foreach ($produtos as $produto) { 
          $referencia = $produto["pr_codigo"]; 
          $nome = $produto["pr_descricao"]; 
          $preco = $produto["pr_preco"]; 
          $disponivel = $produto["disponivel"]; 
         } 
         echo "<h2>Referencia: ".$referencia."</h2>"; 
         echo "<h2>Nome: ".$nome."</h2><hr>"; 
    
    ?> 
    <form action="confirmaAlterar.php"> 
    <div class="form-group"> 
    <label>Referencia</label> 
        <input class="form-control" type="text" name="referencia" value="<?php echo $referencia?>"> 
    </div> 
    <div class="form-group"> 
    <label>Nome</label> 
        <input class="form-control" type="text" name="nome" value="<?php echo $nome?>"> 
    </div> 
    <div class="form-group"> 
    <label>Preço</label> 
        <input class="form-control" type="text" name="preco" value="<?php echo $preco?>"> 
    </div> 
    <button class="btn btn-primary">Alterar</button> 
    </form> 
    

    这里是它提交表单信息的地方。

    <?php 
    include "header.php"; 
    include "conexao.php"; 
    $nome=$_GET['nome']; 
    $referencia=$_GET['referencia']; 
    $preco=$_GET['preco']; 
    $sql="UPDATE tb_produto SET pr_descricao='".$nome; 
    $sql.="', pr_preco=".$preco; 
    $sql.= " WHERE pr_codigo='".$ 
    try{ 
        $comando=$db->prepare($sql); 
        $comando->execute(); 
        echo "<script type='text/javascript'>alert('submitted successfully!')</script>"; 
        header("refresh2;Location:index.php"); 
    } 
    catch (PDOException $e){ 
        echo "A"; 
    } 
    
    +0

    如果您不婉地使用ajax,则需要提交表单t页面重新加载 –

    +0

    谷歌“AJAX”.. –

    +0

    或重定向url传递消息在url中,并显示请求变量 – rahul

    回答

    0

    使用ajax传递值。形式:

    <form id="form"> 
    <input type="text" value="test" name="akcija"> 
    </form> 
    

    表单中的所有输入字段值将被传递。

    阿贾克斯:

    jQuery(function(){ 
    $('#form').on('submit', function (e) { //on submit function 
        e.preventDefault(); 
        $.ajax({ 
         type: 'post', //method POST 
         url: 'yoururl.php', //URL of page where u place query and passing values 
         data: $('#form').serialize(), //seriallize is passing all inputs values of form 
         success: function(){ //on success function 
           $("#input").attr("disabled", true); //example 
           $("#input").removeClass('btn-primary').addClass('btn-success');//example 
            }, 
        }); 
    } 
    }); 
    

    而AJAX页面,您可以获取值由

    $akcija = $_POST['akcija'] 
    
    +0

    请不要发布依赖于jQuery的Javascript代码,当问题上没有jQuery标记。 –

    +0

    @CharlotteDunois只是想帮忙,我应该删除答案..或? –

    +0

    更新答案只使用普通的JavaScript,那就没事。 –

    0

    对于这个问题,必须使用AJAX方法。

    1-创建html表单和所有输入必需。

    <form id="contactForm2" action="/your_url" method="post"> 
    ... 
    </form> 
    

    2-在html页头添加jQuery库文件。

    <head> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js">  
    </script> 
    ... 
    

    3-添加此方法在jQuery库

    <script type="text/javascript"> 
    var frm = $('#contactForm2'); 
    frm.submit(function (ev) { 
        $.ajax({ 
         type: frm.attr('method'), 
         url: frm.attr('action'), 
         data: frm.serialize(), 
         success: function (data) { 
          if(data == 'pass') 
          alert('ok'); 
          else(data == 'fail') 
          alert('no'); 
         } 
        }); 
    
        ev.preventDefault(); 
    }); 
    </script> 
    

    在YOUR_URL 4- PHP文件

    <?php 
    
        $a = ok ; 
        if($a == 'ok'){ 
        echo 'pass'; 
        }else{ 
        echo 'fail'; 
        } 
    
    ?> 
    

    这上面的答案是简单的管理形式与jQuery,但你需要管理复杂形式更好地使用此库http://jquery.malsup.com/form/

    相关问题