這可能很容易爲你們,但我不明白。 我想將圖像的文件名保存到它自己的SQL基本行中。jQuery - 保存到SQL通過PHP
基本上,我登錄到我有我自己的用戶ID的網站。 並且每個用戶都有自己的背景圖像列。如果用戶願意,用戶可以選擇他自己的圖像。所以基本上,當用戶點擊他想要的圖像時,發生了一個jquery點擊事件,並且ajax調用了一個php文件,該文件應該處理實際更新。每個用戶的行總是存在,所以只需要更新數據。
首先,我收集css屬性'background-image'的文件名並將其分開,以便只獲取文件名。我則該文件名存儲在一個變量我稱之爲「文件名」,然後將其傳遞給這個jQuery的片段:
$.ajax({
url: 'save_to_db.php',
data: filename,
dataType:'Text',
type: 'POST',
success: function(data) {
// Just for testing purposes.
alert('Background changed to: ' + data);
}
});
這是保存數據的PHP:
<?php
require("dbconnect.php");
$uploadstring = $_POST['filename'];
mysql_query("UPDATE brukere SET brukerBakgrunn = '$uploadstring' WHERE brukerID=" .$_SESSION['id']);
mysql_close();
?>
基本上,每個用戶都有自己的ID,這被稱爲「brukerID」 表一切都在被稱爲「brukere」和我應該更新的列是一個叫做「brukerBakgrunn」
當我剛剛運行的JavaScript代碼段,我得到這個消息框作爲回報重新它說:
背景改爲:
警告:在session_start()[function.session啓動]: 無法發送會話緩存限制器 - 頭已經發出(輸出在 /VAR開始 /www/clients/client2/web8/web/save_to_db.php:1) 在 /var/www/clients/client2/web8/web/access.php 上線
這是dbconnect.php
<?php
$con = mysql_connect("*****","******","******");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("****", $con);
require("access.php");
?>
這是access.php:
<?php
// Don't mess with ;)
session_start();
if($_REQUEST['inside']) session_destroy();
session_register("inside");
session_register("navn");
if($_SESSION['inside'] == ""){
if($_POST['brukernavn'] and $_POST['passord']){
$query = "select * from brukere where brukerNavn='" . $_POST['brukernavn'] . "' and brukerPassord = md5('" . $_POST['passord'] ."')";
$result = mysql_query($query);
if(!$result) mysql_error();
$rows = @mysql_num_rows($result);
if($rows > 0){
$_SESSION['inside'] = 1;
$_SESSION['navn'] = mysql_result($result,"navn");
$_SESSION['id'] = mysql_result($result,"id");
Header("Location: /");
} else {
$_SESSION['inside'] = 0;
$denycontent = 1;
}
} else {
$denycontent = 1;
}
}
if($denycontent == 1){
include ("head.php");
print('
<body class="bodylogin">
content content content
</body>
');
include ("foot.php");
exit;
}
?>
+1,我編輯修復你的錯字,並想評論注射。但你已經把注入thingie和意外地恢復了我的更正;-) – 2010-05-06 11:40:27
太快的協作:-) – 2010-05-06 11:42:49
好吧,我更新了第一篇文章。我從ajax方法得到不同的消息。這是關於主機它不能發送會話緩存限制器,頭已經發送。 而數據也沒有更新。如果我從php文件中刪除'require(「dbconnect.php」),那麼我從ajax獲得的所有回報都是無關緊要的。所以它看起來像是需要的。 – 2010-05-06 11:52:37