ホームページ >バックエンド開発 >PHPチュートリアル >PHP フォームを送信すると、データベース テーブルの内容が更新され、現在の行のみが変更されます。

PHP フォームを送信すると、データベース テーブルの内容が更新され、現在の行のみが変更されます。

WBOY
WBOYオリジナル
2016-06-20 12:51:001289ブラウズ

この属性フィールドのコンテンツに対して、select を使用して複数の値を指定しました。データベースに送信する値を選択し、現在の行のみを変更してデータベース内のテーブルの内容を更新するにはどうすればよいですか?


ディスカッション (解決策) に返信します

固有の識別マークを渡します

データベースの現在の行の内容を送信して変更します

データベースを変更する場合、送信された ID に従って操作および更新します。

一意の識別子を渡します。



その一意の識別子を取得するにはどうすればよいですか? jsについてあまり詳しくないのですが、簡単な例を書いてもらえますか?

データベースの現在の行の内容を送信して変更します

データベースを変更するとき、更新は送信された ID、


それはわかっていますが、どうやって取得するのですか そのID、やり方がわかりません
識別マークはあなたがくれたものだけです!

例のデータ内で QQ 番号が繰り返されていないと仮定すると、QQ 番号を一意の識別マークとして使用できます。

一意の識別マークはあなたが与えたものです。

例のデータで QQ 番号が繰り返されていないと仮定すると、QQ 番号は一意の識別マークとして使用できます


一意の識別の意味はわかっています。つまり、その値を取得するにはどうすればよいですか?それともフォームから取得できるのでしょうか?
チェックボックスを使用して、

の形式で値を渡すことができます。 チェックボックスを使用して、


の形式で値を渡すことができます。ロジックを書くか、数行のコードを入力しますか?私は本当に初心者です、あなたはそれを使うのがあまり得意ではないと言いました。
これはデータベース構造に id のようなフィールドを追加するためのもので、この id 値は自動的に生成されるはずです。データが作成されるたびに固有の ID 値が生成され、この ID を使用して値を渡します。たとえば、更新する場合は、ID = 1 または複数の

そして、操作インターフェイス内で操作する場合、操作する場所に一意の識別子である ID または名前の値を与える必要があります。この場合、JS コードにも ID 値が必要です。 js の記述方法は、データベースを呼び出すか操作することです。

これは、自動的に生成される ID のようなフィールドをデータベース構造に追加するだけです。つまり、データを作成するたびに一意の ID 値が生成され、これを使用します。たとえば、更新する場合は、ID = 1 または複数の条件を記述します。

そうしなければならないことはわかっていますが、それを渡す方法や取得する方法がわかりません。 。 。参考までに関数の説明も書いていただけると幸いです

#11

update table_name set IP=11.11.11.11 where qq=1234567;

#11

update table_name set IP=11.11.11.11 where qq=1234567;
これを行う方法は知っていますが、QQ のその行を取得する方法がわかりません。固定 QQ ではなくランダムであるためです。

上記の js では name=a または id=a でメソッドを呼び出します

<input id="a" name="a" type="text" class="scinput" />


function a(){}

#11

update table_name set IP=11.11.11.11 where qq=1234567;
これを行う方法は知っていますが、その行の QQ を取得する方法がわかりません。これはランダムであり、固定 QQ ではないためです。

では、何が修正されるのかあなたのデータベーステーブルは?そして、どの分野を変更したいですか?


#11

update table_name set IP=11.11.11.11 where qq=1234567;
私はこれをすべきことを知っています、私はしませんその行の QQ はランダムであり、固定された QQ ではないため、どうすれば取得できるかわかりません

では、データベース テーブルでは何が固定されているのでしょうか?そして、どの分野を変更したいですか?
変更されたのは、QQ 番号が他の条件によって除外されることです。QQ 番号が唯一の主キーであるため、QQ 番号が存在する行を取得できます。フォームに属性を入力します。コンテンツ、データ テーブルを更新します。

この属性フィールドのコンテンツに対して、送信する値を選択するにはどうすればよいですか。データベースを削除して、データベース内のテーブルの内容を更新しますか? 現在の行


のみを変更します。 また、値を追加するには、insert を使用する必要がありますよね?補間のために選択をどのように使用しますか?それは増加や変化ではなくチェックです





#11

update table_name set IP=11.11.11.11 where qq=1234567;
これを行う方法は知っていますが、その行の QQ を取得する方法がわかりません。固定 QQ ではなくランダムであるためです。

それで、どうなるでしょうか。データベーステーブルにありますか?そして、どの分野を変更したいですか?

改变的就是属性那个字段啊,QQ号码是别的条件筛选出来的,因为QQ号码为唯一的主键,所以可以通过获取QQ号码所在的行,然后表单输入属性的内容,更新数据表
qq号码是不是还有别的表?你这个表是查出来的还是已经存好的?

你这个是查出来的吧,显示的时候,把id也传过来,用一个 input type="hidden"把id保存下来,
选择好了select后,提交表单的后,在php里面$_REQUEST将值拿出来呀,然后update



这个属性字段下的内容,我用select给了几个值,怎么选择那个值提交到数据库并更新数据库中表的内容,只改变当前行


还有,你应该是用insert添加值吧?你怎么用select进行插值?那是查,不是增也不是改

221f08282418e2996498697df914ce4e
5a07473c87748fb1bf73f23d45547ab8
并不是数据库里用select,数据库用的是insert into newdata(‘属性’) values ($_POST['name']) 





#11

update table_name set IP=11.11.11.11 where qq=1234567;


我知道这么做,我是不知道那一行的QQ我怎么去获取,因为是随机的,不是固定的QQ
那你这个数据库表里边什么是固定不变的?还有你要改变你哪个字段?

改变的就是属性那个字段啊,QQ号码是别的条件筛选出来的,因为QQ号码为唯一的主键,所以可以通过获取QQ号码所在的行,然后表单输入属性的内容,更新数据表
qq号码是不是还有别的表?你这个表是查出来的还是已经存好的?
 
这个是其他操作后查出来的,还要进行修改的行

<?php 	include "conn.php";	$sql="SELECT * FROM `newdata` where `属性`=''";	$query=mysql_query($sql);	while($row=mysql_fetch_array($query)){?>        <tr>          <td><?php echo $row['QQ号码'];?></td>          <td><?php echo $row['昵称'];?></td>          <td><?php echo $row['来路及搜索关键词'];?></td>          <td><?php echo $row['IP'];?></td>          <td><?php echo $row['来源地区'];?></td>          <td><?php echo $row['网站'];?></td>          <td>				<form method = "post" name="send" action="">		        <select name="s" style="height:25px; border:none" onchange="submit();">                <option value=''>请选择</option>			    <option value='员工'>员工</option>                <option value='客户'>客户</option>                <option value='同行'>同行</option>                <option value='无意向'>无意向</option>			    </select>			    </form>			    <input style="display:none" type="submit" name="keep" value="保存"/>			  <?php					include "conn.php";					$sql2="INSERT INTO `newdata`(`属性`) VALUES ('$_POST[s]') where ?????";					$change=mysql_query($sql2);			      ?>		  </td>          <td><?php echo $row['上传时间'];?></td>        </tr><?php }?>

我把代码也贴出来,求大神帮忙改

"INSERT INTO `newdata`(`属性`) VALUES ('$_POST[s]') where ?????"
改数据用update,为什么insert

"INSERT INTO `newdata`(`属性`) VALUES ('$_POST[s]') where ?????"
改数据用update,为什么insert




改了,现在是update  `newdata` set  `属性`='$_POST[s]'

改过之后,你还需要改个地方,就是表单table标签你没写,而是直接写了tr和td,刚刚没加table标签,我用js和jQuery都没获取到qq号,所以你要用table标签包住tr和td,然后再获取QQ号,QQ号可以用js获取或者引入jQuery获取。
如果是js,那就

	var qq = document.getElementById('t1');	var qq_num = qq.innerHTML;	//alert(qq_num);

如果是jQuery(别忘了引入jQuery),那就
var qq_num = $('td:eq(0)').html();


;選択してください4afa15d3069109ac30911f04c56f3338 < ;option value='Peer'>Peer& lt;/option>



a67d3a336f376191cd6d894bc0694c3081062de0c3007fd8db1e973d82686210b90dd5946f0946207856a8a37f441edf

この td タグを document.getElementById に追加します('t1')

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。