2013-04-29 41 views
-3

你好,我有下面的'編輯'圖標,當我點擊它時,它在同一頁面內打開(如lightbox)新窗口(iframe)(不刷新等)。在新打開的iframe中,我有一個帶有1個輸入的表單。我希望在點擊提交時使用該函數(在同一個.php文件中)來檢查該值(可能只有數字)是否超過299以重定向到google.com,否則將重定向到雅虎。 COM。 (該網站只是一個例子。) 這裏是我的「編輯」圖標代碼:提交表單時無法運行PHP函數。 PHP/HTML

<div id="login-holder"><a href="#skinid"><img src="icons/edit.png" width="12px" height="12px" /></a></div> 

下面是在腳本的底部我#skinid格:

<div class="hidden"> 
<mark id="message"></mark> 
    <div id="skinid"> 
    <section class="container"> 
    <div class="form2"> 
         <form action="" method="POST"> 
          <!--<fieldset class="textarea-field"> 
           <textarea title="Message">Message</textarea> 
          </fieldset>--> 
<br> 
          <fieldset> 
           <span class="ico user-ico"></span> 
           <input name="skinid" onkeypress="return isNumberKey(event)" type="text" class="field" value="Enter new Skin ID. (-200$)" title="Enter new Skin ID. (-200$)" /> 
          </fieldset> 
          <center><input type="submit" class="submit btn blue-btn" value="Update" /></center> 
         </form> 
        </div></section> 
    </div></div> 

我與加試:

if (isset($_POST['skinid'])) { 
     if($_POST['skinid'] > 299) {header("Location:http://google.com");} 
else {header("Location:http://yahoo.com");} 
     return; 
    } 

上面的窗體,它沒有工作。

+0

是的,問題出在哪裏? – dbf 2013-04-29 19:05:06

+0

我已經用我所嘗試過的更新過我的帖子。 – user215584 2013-04-29 19:11:22

+0

@ user215584'它沒有工作'!='這是它給出的結果不正確' – raidenace 2013-04-29 19:25:12

回答

0

如果我理解正確,您將PHP代碼放在HTML表單代碼的正上方,即在發送了一些實際輸出之後。如PHP手冊所述,header("Location:...")在之前應被稱爲任何輸出已被髮送。

引述PHP manual

記住頭之前的任何實際的輸出是 發送,或者通過正常的HTML標記,在一個文件中的空行,或從PHP()必須被調用。 使用include或require, 函數或其他文件訪問函數讀取代碼,並在調用header()之前輸出空格或空行 是非常常見的錯誤。使用單個PHP/HTML文件時存在相同的問題 。

因此,在發送任何HTML輸出之前(例如,在文件的頂部)放置PHP代碼應該可行。 如果不是,則需要更詳細的信息(正如其他評論者已經指出的那樣)。