PHP和SQL echo使用两个参数

时间:2013-04-29 19:06:47

标签: php sql

我有一个SQL数据库,我填充了以下

$con = mysql_connect("localhost","****","****");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("stingin_epanic", $con);

$sql="INSERT INTO sms_sent (smsmsisdn, member_name, member_id, dealer, sms)
VALUES

('$_POST[smsmsisdn]','$_POST[member_name]','$_POST[member_id]','$_POST[dealer]','$_POST[sms]')";

if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }
echo "SMS Submitted";

mysql_close($con);

?>

我的专栏如表

所示

smsmsisdn / sms / id / member_msisdn / member_id / member_name / dealer

由于同一用户会有大量信息,但SMS详细信息发生变化,我需要在ID上显示msg以及个人详细信息,如下面的代码所示。

<?php
$host = "localhost"; // Host name
$username = "****"; // Mysql username
$password = "****"; // Mysql password
$db_name = "****"; // Database name
$tbl_name = "sms_sent"; // Table name

// Connect to server and select database.
mysql_connect("$host", "$username", "$password") or die("cannot connect");
mysql_select_db("$db_name") or die("cannot select DB");

// get value of id that sent from address bar
$id = $_GET['id'];

// Retrieve data from database
$sql = "SELECT * FROM $tbl_name WHERE member_id='$member_id'";
$result = mysql_query($sql);
$rows = mysql_fetch_array($result);
$_SESSION['msisdn'] = "27" . substr($rows['member_msisdn'], 1);
?>

我回复SQL如下:

value="<? echo $rows['member_msisdn']; ?>

我遇到的问题是表格中有特定数字的输入很多我将详细信息发送到新的php屏幕

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

然而它回显了member_msisdn和其他字段的正确信息,因为它们很常见,但是SMS字段是不同的,我如何通知系统我想使用它刚创建的特定id只显示该行约会。

1 个答案:

答案 0 :(得分:0)

首先:不要在新代码中使用mysql_ *函数。它们不再维护,并且已被正式弃用。

您需要将$member_id替换为

中的$id
$sql = "SELECT * FROM $tbl_name WHERE member_id='$id'";

这是新代码

<?php
$host = "localhost"; // Host name
$username = "****"; // Mysql username
$password = "****"; // Mysql password
$db_name = "****"; // Database name
$tbl_name = "sms_sent"; // Table name

// Connect to server and select database.
mysql_connect("$host", "$username", "$password") or die("cannot connect");
mysql_select_db("$db_name") or die("cannot select DB");

// get value of id that sent from address bar
$id = $_GET['id'];

// Retrieve data from database
$sql = "SELECT * FROM $tbl_name WHERE member_id='$id'";
$result = mysql_query($sql);
$rows = mysql_fetch_array($result);
$_SESSION['msisdn'] = "27" . substr($rows['member_msisdn'], 1);
?>

注意:你的代码中有sql注入,如果你不确定,不要直接将值传递给mysql

$id = $_GET['id'];更改为

$id = (int)$_GET['id'];

现在$id是安全的。