如何在php/msql中传递行id查询单行

txu3uszq  于 2021-06-25  发布在  Mysql
关注(0)|答案(1)|浏览(279)

我在查询mysql表以获取单个行以便使用fpdf库打印它时遇到问题。到目前为止,我可以查询和打印整个表,但不能根据行id动态打印;

<tr>
                        <td>'.$data["cardId"].'</td>
                        <td id="surname_'.$data["cardId"].'">'.$data["surname"].', '.$data["givenName"].'</td>
                        <td id="resAddress_'.$data["cardId"].'">'.$data["resAddress"].'</td>
                        <td id="resSuburb_'.$data["cardId"].'">'.$data["resSuburb"].'</td>
                        <td id="jobTitle_'.$data["cardId"].'">'.$data["jobTitle"].'</td>
                        <td>
                            <input type="button" onclick="viewORedit('.$data["cardId"].', \'edit\')" value="Edit / View" class="btn btn-primary">
                            </td>

                            <td>
                            <form method="get" action="invoice.php">
                            <input type="submit" value="Generate" name='.$data["cardId"].' class="btn btn-success">
                            </form>
                            </td>

                            <td>
                            <input type="button" onclick="deleteRow('.$data["cardId"].')" value="Delete" class="btn btn-danger">
                        </td>
                    </tr>

我正在使用generate按钮来提取和生成数据。这里是我的sql查询和pdf设置;

$pdf = new PDF('P', 'mm', 'A4');

$pdf->AliasNbPages('{pages}');

$pdf->AddPage();

$pdf->SetFont('Arial', '', 9);
$pdf->SetDrawColor(50,50,100);

$id = '.$data["cardId"].';
$query=mysqli_query($connection,

               "SELECT 
                    surname, otherSurname, givenName, jobTitle
                FROM 
                    cards, employment
                WHERE 
                    cards.cardId = '$id'");
while($data=mysqli_fetch_array($query)){
    $pdf->Cell(40,5,$data['surname'], 1, 0);
    $pdf->Cell(25,5,$data['otherSurname'], 1, 0);
    $pdf->Cell(65,5,$data['givenName'], 1, 0);
    $pdf->Cell(60,5,$data['jobTitle'], 1, 1);
}

$pdf->Output();

如果我删除了传递的id,我会把所有记录打印在pdf中。如果我添加id,就不会得到任何结果(只有pdf格式)。但是我想得到行id,这样我就可以生成该行数据的pdf,而不是打印整个表。请帮忙。
谢谢你们。

csga3l58

csga3l581#

如果id是db中的int,并且使用单引号(“”),它将返回一个错误int不需要引号。你可以试试这样的。

"SELECT surname, otherSurname, givenName, jobTitle
FROM cards, employment
WHERE cards.cardId = ".$id."");

这个$data[“cardid”]var需要在php标记中,并像这样回显。

<input type="submit" value="Generate" name="<?php echo $data["cardId"];?>" class="btn btn-success">

相关问题