2011-01-27 13 views
0

私はPHPが初めてで、よく分からない問題が1つあります。WebフォームからPHPを使用してデータテーブルを更新する

私はウェブフォームとテキストフィールドを持っています。 Webフォームがテキストフィールドを読み込むと、データベースからデータを取得します。

私がしようとしているのは、実際に2番目のWebフォームの読み込み時に、buton clickでdatabseを更新することです。しかし、データベースのデータはまったく変化していません。

$first_name = $_POST[textfield]; 

session_start(); 
$telegramNum = $_SESSION[telegramNum]; // This is data from first page, this code is 
             // on third page, data was from second page 

$testDataQuery="UPDATE person_response SET first_name = ".$first_name." WHERE telegram_number= " .$telegramNum; 
+0

どのようにデータベースに接続していますか? – kjy112

+2

クエリのテキストの前後に引用符を付ける必要があります。そうしないと、MySQLはエラーを返します。例: 'first_name = '"。$ first_name。 "' WHERE' –

+0

私もそれを試しています。それは大丈夫です。しかし、私は最初のページからデータを取得します。テキストフィールドは、最初のテキストフィールドと2ページ目のテキストフィールドの名前なので、おそらく問題でしょうか?そして私はそれを失うので、私は2番目からではなく、最初のページからデータを取得します。 –

答えて

0

フォームタグに問題がありました。私はフォームタグ内にコードの穴の部分を入れなかった。

0

データベースに接続してクエリを送信する必要があります。あなたのコードでは、mysqlクエリを変数に代入するだけです。

1

まず、phpを使ってデータベースへの接続についてのチュートリアルを読んでみましょう。次に、クエリを実行する方法を学びます。また、データの注入にmysql_real_escape_string()を使用する方法について少しお読みください。

PHP MySQL connection tutorial

$first_name = $_POST['textfield']; 

session_start(); 
$telegramNum = $_SESSION['telegramNum'];  
$testDataQuery="UPDATE person_response SET first_name = '".$first_name."' WHERE telegram_number= '" .$telegramNum."'"; 

クエリで注入されたデータの周りに単一引用符を使用しても約$ _POSTと$ _SESSIONは、あなたは私を理解していなかった

0

をvarsのを確認してください。私はデータベースに接続しました。ページ2がロードされると、データベースのデータでテキストフィールドが更新されます。

しかし、そのテキストフィールドの一部を変更して別のページに移動すると、その瞬間にこの新しいデータでデータベースを更新したいと考えています。接続と他のすべては大丈夫です。

+0

MySQLまたはPHP – kjy112

+0

から返されたエラーを投稿してくださいエラーはありません。データベースは更新中ですが、first_nameの更新は空のセルです。 –

+1

$ _POSTと$ _SESSIONの前後に引用符を入れてから、$ first_nameにエコーを行います。投稿から値が得られるかどうかを確認してください – kjy112

関連する問題