2013-01-02 5 views
0

저는 한 페이지에서 다른 페이지로 변수를 전달하는 방법을 연구했습니다. 선생님이 인터넷을 통해 도움을 얻을 수 있다고 말하면서 시험을 치르는 데 도움이 필요합니다. 변수를 전달하기 위해 만든이 링크는 학생 ID 나 이메일이 링크로 전달되기 때문에 작동하지 않습니다.PHP에서 2 페이지 사이에 ID가 전달됨

echo "<table border=1><th colspan=7>Placed Orders</th></tr><tr><td>Student ID or Email</td><td>Name</td><td>Phone Number</td><td>Room Number</td><td>Order</td><td>Approval</td><td>&nbsp;</td></tr>"; 
while ($row=mysql_fetch_array($result)) { 
    $id = $row["StudentIDorEmail"]; 
    $name = $row["Name"]; 
    $phone = $row["Phone"]; 
    $roomnumber = $row["RoomNumber"]; 
    $order = $row["Orders"]; 
    $approval = $row["Approved"]; 
    echo "<tr><td align='center'>" . $id . "</td><td align='center'>" . $name . "</td><td align='center'>" . $phone . "</td><td align='center'>" . $roomnumber . "</td><td align='center'>" . $order . "</td><td align='center'>" . $approval . "</td><td align='center'><a href='approve.php?id=".$id."'>Fill Order</a></td></tr>"; 
} 
echo "</table>"; 

내가 그 행이 1로 설정 취득하고 하나를 변경하면 다음이 삭제됩니다 만들 수 있도록 approve.php 페이지에 변수를 전달하기 위해 노력하고있어 : 이것은 상대적인 코드 데이터베이스 그것은 내가 계속해서 오류를 일으키고 있으며 무엇이 잘못되었는지를 알지 못합니다. 여기가와에서 전달 될 생각이야 페이지에 대한 상대 코드의 다른 부분 :

$id = $_GET["StudentIDorEmail"]; 
$query = "UPDATE tracker WHERE StudentIDorEmail=$id"; 
if (mysql_query($query, $con)) { 
$query1 = "DELETE FROM tracker WHERE Approved=1"; 
if(mysql_query($query1, $con)) { 
    echo "Order was filled successfully!"; 
} else { 
    echo "Error: " . mysql_error(); 
} 

은}

이 내 시험에 대한 요구 사항을 내가이 거의 완료했기 때문에 도와주세요 .

+0

당신은 세션을 사용하지 않는 이유는 무엇입니까? http://php.net/manual/en/features.sessions.php –

+1

$ id = $ _GET [ "id"]; – vodich

+0

@MohammadAhmad Erm, 다른 링크가있는 루프이기 때문에 사용자가 하나를 선택합니까? –

답변

7

당신의 연결이 당신이 $_GET['id']하지 $_GET['StudentIDorEmail'] 접근 할 필요가 의미 'approve.php?id=".$id."'

입니다.

나중에 참조 할 수 있도록 어떤 변수가 있는지 보려면 var_dump($_GET)을 시도하십시오.

편집 : SQL 삽입에 대해 알아야합니다. 이 경우

XKCD

만 얻을 수 당신을 위해 $id = intval($_GET['id'])를 사용할 수 있습니다.

+0

+1) –

+0

+1도 그림. –

+0

'approve.php? StudentIDorEmail = ". $ id."로 링크를 변경했습니다. ID를 전달할 때 작동하지만 이제 승인 스크립트의 로직 부분이 작동하지 않습니다. 나는 그것이 틀린 것으로 올라가는 것 외에 다른 일이 무엇인지 이해하지 못합니다. –

1

이 정말 쉬운에

<a href='approve.php?id=".$id."'> 

변경이 :

<a href='approve.php?StudentIDorEmail=".$id."'>