我需要将会话增量值插入数据库中,在这里我可以增加000000102等值,但是问题是我无法将这些增量值插入数据库表中。

谁能帮我解决这个问题?

这是我的代码:

    <?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();

        }
    ?


真的非常感谢大家,现在我可以在使用varchar作为Bill_number之后,将会话增量值正确地插入数据库表中。

但是现在的问题是我无法以0001,0002等格式将会话增量值插入数据库。

真的谢谢您再次帮助我。

最佳答案

请检查:


列Bill_number是varchar类型
您应该在PHP脚本的开头使用session_start();,否则您的会话变量将被视为本地变量
在进入mysql_query之前准备查询,然后打印它。


另外,您可以在代码中将$_SESSION['rid'] = $_SESSION['rid']+ 1;替换为$_SESSION['rid']++;

08-06 22:56