php
  • html
  • 2016-08-27 32 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/

    相關問題