2014-01-22 92 views
1

我在代碼中發現了一個問題,當我想從數據庫中刪除用戶時,它必須刪除他,刪除代碼完美,但事後if條件顯示用戶已被刪除,我有一個後退按鈕,我點擊它,它應該重定向我回到教室與其他用戶在其中。課堂是由ID標識的,當然,但是當我點擊後退,就說明我沒有教室一類的ID ......所以它不是讓ID ...當點擊後退按鈕時,不從檢索器url中檢索id

// get value of id that sent from address bar 
$id_student=$_GET['id_student']; 
$id_trieda = $_GET['id_triedy']; 
// Delete data in mysql from row that has this id 
$zmaz='DELETE FROM $tbl_name WHERE id_student="'.$id_student.'" AND id_triedy="'.$id_trieda.'"'; 
mysqli_real_escape_string($prip, $zmaz); 
$row = mysqli_query($prip,$zmaz); 


// if successfully deleted 

if($row){ 

echo "Študent bol úspešne vymazaný."; 
echo "</br>"; 
echo "<a href='./trieda.php?id_triedy=".$_GET['id_triedy']."'>Späť do triedy<a/>"; 

} 

else { 
echo "Chyba"; 
} 
?> 

編輯:

// get value of id that sent from address bar 
$id_student=$_GET['id_student']; 

// Delete data in mysql from row that has this id 
$zmaz="DELETE FROM $tbl_name WHERE id_student='$id_student'"; 
$result=mysql_query($zmaz); 

// if successfully deleted 

if($result){ 
    $id_trieda = $_GET['id_triedy']; 
echo "Študent bol úspešne vymazaný."; 
echo "</br>"; 
echo "<a href='./trieda.php?id_triedy=".$id_trieda."'>Späť do triedy<a/>"; 

} 

else { 
echo "Chyba"; 
} 

這裏是編輯的代碼,這是類似的工作,當我添加一個學生到類中,然後再次有一個後退按鈕,但它的工作....所以問題將刪除學生,它無法找到他在課堂上的ID是..我想..但我不知道如何得到這個課程的ID,然後他被刪除..

+0

在您的Back鏈接中,嘗試使用'$ id_trieda'而不是'$ _GET ['id_triedy']'。 – ElendilTheTall

+0

請參閱下面的回答 – ElendilTheTall

回答

1

的id_student看着你在你的評論鏈接到網頁,我看到了問題 - 你不是活得在您的zmazat鏈接中傳遞id_triedy。它讀取:

http://www.xxx.xx/project/zmazat_studenta.php?id_student=15

它應該閱讀:

http://www.xxxx.xx/project/zmazat_studenta.php?id_student=15&id_triedy=18 (或任何相關id_triedy是)。

然後你的問題代碼中的$_GET['id_triedy']實際上有東西得到。

你真的應該建立在對這種事情進行檢查:

if(isset($_GET['id_triedy'])){ 
    $id_trieda = $_GET['id_triedy']; 
} else { 
echo 'No trieda ID'; 
} 

這將查詢的網址爲id_triedy並告訴你,如果它不存在。

+0

好,但它會告訴我,沒有可靠的ID,它會解決問題,如果我把它放在?因爲我沒有看到你的代碼中的解決方案 – frank17

+0

再次閱讀我的答案。問題不在你的問題的代碼中,事實上**你沒有在'zmazat_studenta.php' **的鏈接中包含id_triedy,所以你正試圖'$ _GET'參數不存在。你需要編輯'trieda.php',而不是'zmazat_studenta.php'。 'isset'檢查不是必需的,這只是一個好習慣。 – ElendilTheTall

+0

我明白了。感謝哥們,昨晚我累了,所以我沒有得到它:D它現在完美,謝謝:) – frank17

0

是包含課堂的文件,其中包含了所有曾經使用過的教程。如果是這樣,這條線應該修改爲:

echo "<a href=\"./trieda.php?id_triedy=".$_GET['id_triedy']."&id_student=".$_GET['id_student']."\">Späť do triedy<a/>"; 

看起來你冷落在URL

+0

我不認爲trieda.php需要student_id – ElendilTheTall

+0

你能爲教室提供代碼嗎? – SyntaxLAMP

+0

我可能是錯的,但在上面的代碼中將student_id作爲URL參數包含的唯一原因是他正在刪除該學生。該鏈接然後指向「課堂」頁面 - 這表明多個學生。 A)你爲什麼需要學生證顯示整個教室?B)學生剛被刪除,所以他的ID不存在。 – ElendilTheTall