2012-09-05 98 views
-1

我的PHP腳本指向一個URL取決於哪個提交按鈕被按下。然而,當我運行測試時,我收到一個錯誤,說第4行包含一個意想不到的「:」,但我的第4行是我的標題腳本與網址?語法錯誤 - 意外「:」

我很困惑,因爲我有類似的其他腳本,他們不給我那個錯誤。任何人都可以告訴我我錯過了什麼,可能很簡單,我之前被抓過簡單。

<?php 
if ($_REQUEST['Dish1'] == 'Dish1') 
{ 
header(「Location: http://blahblah」.urlencode($_POST[‘uid’])); 
} 
else if ($_REQUEST['Dish1'] == 'Dish2') 
{ 
header(「Location: http://blahblah2」.urlencode($_POST[‘uid’])); 
} 
else if ($_REQUEST['Dish1'] == 'Dish3') 
{ 
header(「Location: http://blahblah3」.urlencode($_POST[‘uid’])); 
} 
etc..... 
?> 

回答

4

您正在使用捲曲的引號。

分別將所有「 」‘ ’分別替換爲"'

+0

+1 - 我只是在問題中進行編輯時,我注意到了! – andrewsi

+0

告訴你我可能很簡單,有時候會認爲當我從記事本中複製某些東西時,引號發生了變化,並且在再次複製之前不記得更改它們。謝謝大家 –

+0

任何人都可以請解釋爲什麼微軟使用這些不可思議的字符????? – scottyseus

2

您正在使用錯誤的引號...使用「」而不是「」。 Refer to Wikipedia,你必須使用打字機報價,而不是捲曲或引號。

PD:PHP Parse error: syntax error, unexpected '.' on line 15; )

0

替換您如下

<?php 

if ($_REQUEST['Dish1'] == 'Dish1') 
{ 
header("Location: http://blahblah.urlencode".($_POST['uid'])); 
} 
else if ($_REQUEST['Dish1'] == 'Dish2') 
{ 
header("Location: http://blahblah2".urlencode($_POST['uid'])); 
} 
else if ($_REQUEST['Dish1'] == 'Dish3') 
{ 
header("Location: http://blahblah3".urlencode($_POST['uid'])); 
} 

?> 
0

代碼豈不是更容易編寫:

$lookup = array('Dish1' = > 'http://blba1', 'Dish2' = > 'http://blba2'); 

if(isset($lookup[$_REQUEST['Dish1']])) 
    header("Location: " . $lookup[$_REQUEST['Dish1']]);