如何将变量值保存在PHP中的循环之外?
问题描述:
<?php
//connecting to the database
define('DB_HOST', 'localhost');
define('DB_NAME', 'visitor_list');
define('DB_USER','root');
define('DB_PASSWORD','');
$con=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("Failed to connect to MySQL: " . mysql_error()); $db=mysql_select_db(DB_NAME,$con) or die("Failed to connect to MySQL: " .
mysql_error()); //inserting Record to the database
$dat1 = date("d");
$moth1 = date("m");
$year1 = date("Y");
$sql2 = 'SELECT * FROM list1 ORDER BY card_no DESC LIMIT 1;';
$retval = mysql_query($con,$sql2);
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
/*echo "{$row['card_no']}";*/
$in= $row['card_no'];
$in++;
}
$ap_ty = $_POST['ap_ty'];
$per = $_POST['per'];
$no_vis = $_POST['no_vis'];
$nm_vis = $_POST['nm_vis'];
$co_nm = $_POST['co_nm'];
$ad = $_POST['ad'];
$po = $_POST['po'];
$ty_vis = $_POST['ty_vis'];
$met_nm = $_POST['met_nm'];
$dep = $_POST['dep'];
$des = $_POST['des'];
$por_met = $_POST['por_met'];
$vad = $_POST['vad'];
if(!isset($_POST['submit'])){
$query = "INSERT INTO list1 (card_no,d1,m1,y1,app_ty,no_per,area_vis,nm,com_nm,add1,pho,ty1_vis,met_with,depart,desi,pur_meet,vad_up) VALUES ('$in','$dat1','$moth1','$year1','$ap_ty','$per','$no_vis','$nm_vis','$co_nm','$ad','$po','$ty_vis','$met_nm','$dep','$des','$por_met','$vad')";}
$result = mysql_query($query);
if($result)
{
echo '<script type="text/javascript">
alert("Your Deatils has been Submitted");
</script> ';
header('location:index.php');
}
else
{ die('Error: '.mysql_error($con)); }
mysql_close($con);
?>
我想将$in
变量值保存在查询中但无法保存。在插入时它保存值0而不是实际值。如何将变量值保存在PHP中的循环之外?
答
<input type="text" class="form-control" name="vis_id" value=" <?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn)
{
die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT * FROM list1 ORDER BY card_no DESC LIMIT 1;';
mysql_select_db('visitor_list');
$retval = mysql_query($sql, $conn);
if(! $retval)
{
die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
/*echo "{$row['card_no']}";*/
$in= $row['card_no'];
$in+
$test = $in;
}
mysql_close($conn);
?>" disabled>
这是在此输入框中的值递增 帮我保存这个输入框的值到另一个文件是数据库文件的实际代码 。
你想保存你从第一个查询中获得的所有卡号吗? – Poria
while循环之外尝试通过$ in = 0启动$ in变量,在$ in ++之后回显$ in的值,看看它是否实际上正在增加。@ gundeep –
删除$ in ++;在while循环内 –