编写php文件, 获取mysql 数据库某个表中一条记录中的指定字段值。

向高手请教了,如下图:

我想通过post的方式,查询该数据库“miptx_item”这个表中,title字段中是否有我框选的内容,也就是post发送的内容,如果有的话,那么,就输出该记录中“item_id”字段中的值,如果没有,则输出“没有该宝贝”,请教各位高人,该php怎么写呢?登陆数据库和选择数据库我会,其他的请高人指点,多谢。
<?php

$mysql_server="localhost";
$mysql_username="mami";
$mysql_password="linxi";
$con = mysql_connect($mysql_server,$mysql_username,$mysql_password);
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
else
{
echo "连接成功";
echo "<br />";
}
mysql_query("set names gbk");

mysql_select_db('mamiguo_com',$con);
$msgname=$_POST["name"];
$sql="select * from miptx_item where title like '$msgname'";
$result=mysql_query($sql);
$row=mysql_fetch_array($result);
echo "已取得:";
echo $row['item_id'];
echo "<br />";
mysql_close($con);

?>
这是我摸索着写出来的代码,可以输出item_id了,但是如果title字段如果有相同重复的名字的话,如何依次取出前面的item_id呢?另外,查询的时候,能不能只查询该表中最后的10条记录?这样速度会快一点吧?

第1个回答  2013-01-17
$query = " select * from * where title =$_POST[''] limit 1" ;
$res = mysql_query($query);
mysql_fetch_assoc(){ 具体的原函数忘记了,现在基本都用类封装好的数据库操作很少用到这些函数了}
第2个回答  2013-01-16
这个好办 先接收到你框选的内同 。然后用到数据库查询的时候选择模糊查询。就像 select *from
'xxx' where title like'%进口 corine%' like 后面的部分都是模糊查询,这就表示,只要你该段中包含‘进口 corine‘字眼的就算是查找到结果 ,然后拿到结果集后你再做相应的处理。我说的对不?
第3个回答  2013-01-17
$sql="select * from miptx_item where instr(title,'进口')";

用这个查询下
$sql="select * from miptx_item where instr(title,'$msgname')";
第4个回答  2013-01-17
你提交表单的时候,用post方式 在php 有超全局数组会记录你表单的数据,,你可以查阅下超全局数组 get post 知道数据怎么拿,就知道在呢么去数据库拿了,,如果不会,看来你要学习下数据库
第5个回答  推荐于2018-05-18
<?php
$link=mysql_connect("username","userpwd","dbname");
$postcontent=$post['输入的内容'];
$data=$link->mysql_query("select item_id,title from miptx_item");
$row=count($data);
$flag=false;
for($i=0;$i<$row;$i++){
if($data[$i].title)==$postcontent){
$flag=true;
echo $data[$i].item_id;
exit;
}
}
if(!$flag){
echo "没有该宝贝";
}
?>追问

您好,多谢您的答案,不过不知道什么原因我换成你的代码后总是不成功,是不是某些细节上我没注意?另外,我上面问题补充了我后来自己摸索着写的代码,麻烦您帮忙看一下,多谢了。

追答

";
}
mysql_query("set names gbk");

mysql_select_db('mamiguo_com',$con);
$msgname=$_POST["name"];
  $sql="select * from miptx_item where title like '$msgname' item_id desc limit 0,10";
  $result=mysql_query($sql);
  while($row=mysql_fetch_assoc($result)){
   $arr[]=$row;
   }

   foreach ($arr as $v){
   echo $v[item_id];
   echo "";

   }

mysql_close($con);

?>

本回答被提问者和网友采纳
相似回答