2011-10-18 49 views
-1
$fullurl=$_SERVER['PATH_INFO']; 
    if(isset($_POST['name']) && isset($_POST['login']) && isset($_POST['pass'])) 
    { 

      echo ' 
       <form action=".'$fullurl'." method="POST"/> 
       <table width="1000" border="1" cellpadding="10" id="navigationBar"> 
        <tr> 
        <td> <a href="/PoliticalForum/controlPanel.php">Control Panel</a></td> 
        <td> <a href="/PoliticalForum/checkEmail.php">Donate</a> </td> 
        <td> <a href="/PoliticalForum/mainHome.php">Logout</a> </td> 
        </tr> 
       </table> 
      '; 
    } 
    else 
    { 

     echo ' 
      <form action=".'$fullurl'." method="POST"/> 
      <table width="1000" border="1" cellpadding="10" id="navigationBar"> 
       <tr> 
       <td> <a href="/PoliticalForum/Registration.php">Register</a></td> 
       <td> <a href="/PoliticalForum/controlPanel.php">Control Panel</a></td> 
       <td> <a href="/PoliticalForum/checkEmail.php">Donate</a> </td> 
       <td align="right">name:<input name="name" type="text" /></td> 
       <td>password:<input name="pass" type="text" /> <input name="login" type="submit" value="Login" /> </td> 
       </tr> 
      </table> 
      '; 
    } 

我想同樣的URL將被傳遞到行動,但它給了我一個錯誤:如何鏈接一個字符串的PHP變量?

Parse error: syntax error, unexpected T_VARIABLE, expecting ',' or ';' in C:\xampp\htdocs\PoliticalForum\headerSite.php on line 9

,也將在$ fullurl會給我當前網頁的網址?

+0

也許使用[定界符字符串語法](http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc )以避免這種錯誤。 – mario

回答

2

更換

<form action=".'$fullurl'." method="POST"/> 

<form action="' . $fullurl .'" method="POST"/> 
+1

哦..我現在得到它..感謝它幫助 –

0

你周圍有單引號的變量$fullurl當你輸出的形式...只是刪除這些,你應該罰款

echo ' 
    <form action="' . $fullurl . '" method="POST"/> 
    etc... 
+0

這是我得到的,這是我得到:解析錯誤:語法錯誤,意外的T_VARIABLE,期待','或';'在第12行的C:\ xampp \ htdocs \ PoliticalForum \ headerSite.php –

+0

您仍然沒有做出上述建議,請仔細查看您的完整站點和單引號在'$ fullurl'附近的位置......此刻他們錯了方向 – Clive

+0

是的,我糾正了這一點。現在它可以工作。看看上面我得到的新錯誤更新,涉及$ _SERVER [PATH_INFO] –

1

你交換連接運算符和單引號:

echo '<form action="'.$fullurl.'" … '; 
0

改變兩個<form />線這樣的:

<form action="'.$fullurl.'" method="POST"/>

你在錯誤的地方你的單引號。

$_SERVER['PATH_INFO']將包含域後的所有內容,所以如果它是http://domain.com/something/else它將包含/ something/else。

http://php.net/manual/en/reserved.variables.server.php

+0

解析錯誤:語法錯誤,意外的T_VARIABLE,期待','或';'在第12行的C:\ xampp \ htdocs \ PoliticalForum \ headerSite.php中---我仍然得到這個 –

+0

爲什麼它告訴我:注意:未定義的索引:C:\ xampp \ htdocs \ PoliticalForum \ headerSite.php中的PATH_INFO在第5行上:$ fullurl = $ _ SERVER ['PATH_INFO']; –

0
<?php 
$fullurl=$_SERVER['PATH_INFO']; 
if(isset($_POST['name']) && isset($_POST['login']) && isset($_POST['pass'])) 
{ 

     echo ' 
      <form action="' . $fullurl . '" method="POST"/> 
      <table width="1000" border="1" cellpadding="10" id="navigationBar"> 
       <tr> 
       <td> <a href="/PoliticalForum/controlPanel.php">Control Panel</a></td> 
       <td> <a href="/PoliticalForum/checkEmail.php">Donate</a> </td> 
       <td> <a href="/PoliticalForum/mainHome.php">Logout</a> </td> 
       </tr> 
      </table> 
     '; 
} 
else 
{ 

    echo ' 
     <form action="' . $fullurl . '" method="POST"/> 
     <table width="1000" border="1" cellpadding="10" id="navigationBar"> 
      <tr> 
      <td> <a href="/PoliticalForum/Registration.php">Register</a></td> 
      <td> <a href="/PoliticalForum/controlPanel.php">Control Panel</a></td> 
      <td> <a href="/PoliticalForum/checkEmail.php">Donate</a> </td> 
      <td align="right">name:<input name="name" type="text" /></td> 
      <td>password:<input name="pass" type="text" /> <input name="login" type="submit" value="Login" /> </td> 
      </tr> 
     </table> 
     '; 
}