2014-01-11 32 views
1

我有一個帖子值來自另一個頁面併發布到index2.php。我想使用自動提交腳本將該值再次發佈到autosubmit.php。但爲什麼不工作?使用自動提交記錄值不起作用

這裏是我的代碼

index2.php

<?php 
$mysqli = new mysqli("localhost", "root", "", "app"); 
if (isset($_POST['submit'])) { 
$drop=$_POST['drop']; 
$tier_two=$_POST['tier_two']; 

echo' 
<form method="post" action="autosubmitform.php" id="dateForm" name="dateForm"> 
<input name="drop" type="" value="'.$drop.'" style="background-color:blue;"><input name="tier_two" type="" value="'.$tier_two.'"> 
<input type="submit" name="editsubmit"> 
</form>'; 

echo'<script type="text/javascript"> 
    document.getElementById("dateForm").submit(); // SUBMIT FORM 
</script>'; 

} 
?> 

autosubmitform.php

<?php 
$mysqli = new mysqli("localhost", "root", "", "app"); 
if (isset($_POST['editsubmit'])) { 
$drop=$_POST['drop']; 
$tier_two=$_POST['tier_two']; 

echo $drop; echo $tier_two; 
} 
echo' 
<input name="drop" type="" value="'.$drop.'" style="background-color:red;"><input name="tier_two" type="" value="'.$tier_two.'"> 
<input type="submit" name="editsubmit">'; 
?> 
+0

提交不工作或提交但不發送數據??????? –

+0

@rajeshkakawat不發送數據 – user3097736

+0

你檢查了你的帖子值var_dump($ _ POST ['drop'])看看你得到了什麼 –

回答

1

發生在你的代碼

/* 
    if you submit your form through javascript your button value is not submited 
    so you have to click that by javascript to submit it value 
    */ 

<script type="text/javascript"> 

    document.getElementsByName("editsubmit")[0].click(); // SUBMIT FORM 
</script> 

而且移動你的迴音代碼PHP內,因爲如果它一點兒也不往裏走if比你的變量$drop$tier_two保持取消定義你現在外面if

if (isset($_POST['editsubmit'])) { 
    $drop=$_POST['drop']; 
    $tier_two=$_POST['tier_two']; 

    echo $drop; 
    echo $tier_two; 
    echo' 
    <input name="drop" type="text" value="'.$drop.'" style="background-color:red;"><input name="tier_two" type="text" value="'.$tier_two.'"> 
    <input type="submit" name="editsubmit">'; 
} 
回聲聲明

以上PHP代碼的替代解決方案

$drop = ''; 
$tier_two = ''; 
if (isset($_POST['editsubmit'])) { 
    $drop=$_POST['drop']; 
    $tier_two=$_POST['tier_two']; 

    echo $drop; 
    echo $tier_two; 

} 
echo' 
    <input name="drop" type="text" value="'.$drop.'" style="background-color:red;"><input name="tier_two" type="text" value="'.$tier_two.'"> 
    <input type="submit" name="editsubmit">'; 
+0

很棒:))謝謝你!我使用這個技巧是因爲我在使用php會話時遇到了很大的麻煩。 – user3097736

0

用戶這個腳本

window.onload = function(){ 
    document.forms['dateForm'].submit() 

} 

如下

echo"<script type="text/javascript"> 
    window.onload = function(){ 
     document.forms['dateForm'].submit() 

    } 
</script>"; 
+0

在autosubmit.php中也沒有收到帖子值 – user3097736

+0

使用print_r($ _ POST)在autosubmit.php中打印您的帖子varibles;並告訴我 –

+0

多了一個你的類型屬性爲空輸入填充它,並嘗試 –

0

我討厭不能發表評論。但唯一的事情是有些人可能會陷入這一過程。

如果有人關閉了javascript,那麼他們會被原始數據卡在這個頁面上。有沒有另外一種方法可以寫這個?

您也可以將值傳遞給url(GET而不是POST),並對值進行編碼(如果需要加密的話)。