2014-01-13 13 views
1

:)傳遞變量在URL的HTTP請求時,成功地完整地MySQL查詢

好了,我是新手程序員的東西,還是使用過程PHP & mysqli的(我知道,我知道一個用戶,我會學習oop & PDO,一切都在順利進行。)

所以......我......有......這位朋友......他有一個問題。

你看,他有這個SQL查詢

<?php 
require_once('header.php'); 
require_once('connectvars.php'); 
require_once('startsession.php'); 
    if (!isset($_SESSION['user_id'])) { 
    echo '<p class="login">Please <a href="login.php">log in</a> to access this  page.</p>'; 
exit(); 
} 

$newnotecaseid = $_GET['newnote']; 
// Connect to the database 
$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); 

if (isset($_POST['submit'])) { 
// Grab the profile data from the POST 
$note_subject = mysqli_real_escape_string($dbc, trim($_POST['note_subject'])); 
$new_note = mysqli_real_escape_string($dbc, trim($_POST['new_note'])); 
$query = "INSERT INTO case_notes (`note_subject`, `note_text`, `note_date_time`, `case_id`) VALUES ('$note_subject', '$new_note', NOW(),'$newnotecaseid')"; 
mysqli_query($dbc, $query); 

//Confirm success with the user 
$home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/case.php?userid=$newnotecaseid'; 
header('Location: ' . $home_url); 
} 
mysqli_close($dbc); 

?> 

的問題是,他知道如何傳遞一個變量在HREF中的元素,但是當他使用此代碼時,SQL查詢已成功完成,而不是傳遞存儲在變量中的信息,它只是傳遞變量名稱本身,這當然是現在的頁面不知道該怎麼處理,我......呃......我的意思是他,得到一個一大堆未定義的索引警告。他不正確嗎?你甚至可以發送這樣的變量嗎?他希望確保當sql語句完成時,用戶會自動轉到此頁面。

$home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) .  '/case.php?userid=$newnotecaseid'; 
header('Location: ' . $home_url); 

他感謝任何人誰可以指出他在正確的方向:)

+0

我認爲這是/case.php?userid=$newnotecaseid'應該是在雙引號,以使VAR進行插值 – sirfilip

回答

1

您在傳遞變量轉換爲字符串有一個錯誤:\

$home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/case.php?userid=$newnotecaseid'; 

使用串聯:

$home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/case.php?userid=' . $newnotecaseid; 
+0

謝謝主席先生!只是讓你們知道......我沒有一個編程問題的朋友,我整個時間都在談論着我 –

+0

當然,薩姆爵士)) – pltvs

0

你正在這樣做

$home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/case.php?userid=$newnotecaseid'; 

,但你必須嘗試這個

$home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/case.php?userid='.$newnotecaseid;