2011-11-14 130 views
-2

私は小さな(42時間)を持っている記事 編集しようとしている私のコードに問題がある - ちょうど基本editNews.php基本的个人设定のwon't更新データ

を私はデータを編集するために記事を選択すると表示されますDBからの形で、いつ 私はそれがエラーを返しませんが、データはこれがフォームである

<?PHP 
connection to database blah blah 
?> 

<?php 


if(isset($_POST['update'])) 
{ 
$newsid = $_POST['newsid']; 
$date=$_POST['date']; 
$time=$_POST['time']; 
$location=$_POST['location']; 

$result=mysql_query("UPDATE news SET date='$date',time='$time',location='$location', WHERE newsid=$newsid"); 

header("Location: listNews.php"); 
} 
} 
?> 


<?php 

$newsid = $_GET['newsid']; 

$result=mysql_query("select * from news where newsid=$newsid"); 

while($res=mysql_fetch_array($result)) 
{ 
$date = $res['date']; 
$time = $res['time']; 
$location = $res['location']; 


} 
?> 

を更新wasn't「更新」をヒット - 普通1 ....

<form method="post" action="editNews.php" name="form1"> 

各項目は

<input type="hidden" name="newsid" value=<?php echo $_GET['newsid'];?> 

<input name="update" type="submit" value="update" /> 

、ほぼ2日になりました を取った私はしかし、「見て」を参照してくださいドント何かがあるほとんどの...可能性がある

<input type="text" name="headline" value="<?php echo $location;?>" id="UserName"> 

のようなものですI mySqlの「編集」権限はありませんか?

+0

を試してみてください。 –

+1

SQLクエリのユーザー提供の変数をサニタイズしていないため、[SQLインジェクション](http://en.wikipedia.org/wiki/SQL_injection)の脆弱性の影響を受けやすいスクリプトを作成していることに注意してください。これらの脆弱性を防ぐには、[PHP Prepared Statements](http://php.net/manual/en/pdo.prepared-statements.php)を使用してください。ありがとう。 – sarnold

答えて

1

エラーがないことをどのように知っていますか?あなたのコードには欠けています:

UPDATEクエリの直後に追加します。

また、送信されたコンテンツ自体に一重引用符が含まれていると、コードが失敗する可能性が最も高くなります。正しいSQLをデータベースに送信するには、をすべて入力変数に適用することをお勧めします。

0

は、私はあなたの更新クエリの最後のコンマがあるはずはないと思う

$result= mysql_query('UPDATE news SET 
date = "'. $date .'", 
time = "'. $time. '", 
location = "' .$location. '" 
WHERE newsid = '.$newsid.';') OR die(mysql_error()); 
+0

SQLクエリのユーザー指定の変数をサニタイズしていないため、[SQLインジェクション](http://en.wikipedia.org/wiki/SQL_injection)の脆弱性の影響を受けやすいスクリプトを作成していることに注意してください。これらの脆弱性を防ぐには、[PHP Prepared Statements](http://php.net/manual/en/pdo.prepared-statements.php)を使用してください。ありがとう。 – sarnold

+0

php-verifyerがコードが正しいとデバッグしようとしていますが、コードがクローズしているようです。 –

+0

フィールドの日付と時刻はVARCHARかあなたのタイプを指定していますか? – nahri

関連する問題