如何使用php将会话增量值插入数据库表?
我需要将会话增量值插入数据库,在这里我可以增加值,如00010002等,但问题是我无法将这些增量值插入数据库表 有人能帮我解决这个问题吗 这是我的密码:如何使用php将会话增量值插入数据库表?,php,mysql,session,Php,Mysql,Session,我需要将会话增量值插入数据库,在这里我可以增加值,如00010002等,但问题是我无法将这些增量值插入数据库表 有人能帮我解决这个问题吗 这是我的密码: <?php $username="root"; $password="sha12345"; $hostname="localhost"; $dbhandle = mysql_connect($hostname,$username,$p
<?php
$username="root";
$password="sha12345";
$hostname="localhost";
$dbhandle = mysql_connect($hostname,$username,$password) or die("Could not connect to database");
$select = mysql_select_db("sha", $dbhandle);
session_start();
if(!isset($_SESSION['rid']))$_SESSION['rid']=0;
if(!empty($_POST['register']))
{
$_SESSION['rid'] = $_SESSION['rid']+ 1;
$input = $_SESSION['rid'];
str_pad($_SESSION['rid'], 4, "0", STR_PAD_LEFT);
$calender=$_POST['datum1'];
$time=$_POST['timepicker_6'];
mysql_query("INSERT INTO receipt(Bill_number,Date,Time) VALUES ('{$_SESSION['rid']}','$calender','$time')");
require("fpdf/fpdf.php");
$pdf=new FPDF();
$pdf->Addpage();
$pdf->SetFont("Arial","B",18);
$pdf->Cell(0,10,"Receipt number:". str_pad($_SESSION['rid'], 4, "0", STR_PAD_LEFT),0,0,'C');
$pdf->SetFont("Arial","B",18);
$pdf->cell(0,10,"Date:{$calender} ",0,1,'R');
$pdf->cell(0,10,"Time:{$time}",0,1,'R');
$pdf->output();
}
?
您已在$\u会话['rid']=$\u会话['rid']+1中获取会话值代码>这一行,但只有在页面刷新后才能获得新的会话值,所以它不会在这里发生,所以最后您要将$\u session['rid']
变量中可用的旧值传递给查询。请看下面给出的解决方案
$IncrementValue = $_SESSION['rid']+ 1;
并将查询中的{$\u会话['rid']}
替换为$IncrementValue
。现在,您的查询将如下所示:
mysql_query("INSERT INTO
receipt(Bill_number,Date,Time)
VALUES ($IncrementValue,$calender,$time)
");
您还需要在下面的行中进行更改
str_pad($IncrementValue, 4, "0", STR_PAD_LEFT);
希望这对您有所帮助。请检查:
列票据编号为varchar
类型
您应该有session_start()代码>在PHP脚本的开头,否则您的会话变量将被视为局部变量
在传递到mysql\u query
之前准备查询,然后打印它
此外,您还可以替换$\u会话['rid']=$\u会话['rid']+1代码>与$\u会话['rid']++代码>在您的代码中。使用mysqli
或PDO
而不是不推荐的mysql
等。在进入mysql\u query
之前,请准备好查询,然后打印出来。Bill\u number
列是varchar类型?好的,谢谢Apul Gupta,不,我被用作列Bill_number作为int类型。会话变量可以在同一页上使用。@Kyslik-我按照你告诉我的那样编辑,但它出现了错误,如未定义的未定义索引:rid。实际上,为了便于你理解,我再次编辑了我的程序。你能检查一下并告诉我吗。真的谢谢..谢谢Apul Gupta,OK,我忘了添加会话_start();在PHP开始上传时,对不起:(,现在我正确地编辑了我的程序,你能再次检查并告诉我正确的方法吗。始终在脚本开始时保持session\u start
。