我如何调用根据表单选择器的选择执行 fpdf 的函数?
How can i call a function that executes an fpdf based on the choice of a form selector?
我正在尝试创建具有不同格式的 FPDF,这些格式位于一个函数文件中,该函数文件通过字段选择器 = muni 中的另一页上的表单调用,但它不尊重我的 if 并且总是采用第一个函数,你能指导我吗?
这是表格
<form id="clientForm" name="formularioDatos" method="post" action="insertBD.php" target="print_popup"
onsubmit="window.open('about:blank','print_popup','width=1000,height=800');">
<div class= col-md-3>
<select class="form-control input-lg" id="idMunicipio" name="idMunicipio" #>
<option value="" #>MUNICIPIO</option>
<option value="ACOLMAN">ACOLMAN</option>
<option value="ZUMPANGO">ZUMPANGO</option>
</select>
<input id="muni" name="muni" hidden="true">
</div>
<script>
$("#idMunicipio").change(function () {
// aqui vuelve a colocar el id de tu select, pero en esta ocación detectamos el valor que tiene el mismo
$("#idMunicipio option:selected").each(function () {
// luego guardas el valor en una variable
var muni = $(this).val();
$("#muni").val(muni);
});
});
</script>
这是数据库中的反插入:
<?php
include ("pdffunctions.php");
include("conn.php");
$con = connect();
$muni = mysqli_real_escape_string($con, $_POST['muni']);
$way_pay = mysqli_real_escape_string($con,$_POST['way_pay']);
$amount = mysqli_real_escape_string($con,$_POST['amount']);
$concept = mysqli_real_escape_string($con,$_POST['concept']);
$file_name = date("Y-m-d") . "_". $rfc.".pdf";
$sql = "INSERT INTO naucalpan(muni, way_pay, amount, concept, )VALUES('$muni', '$way_pay', '$amount', '$concept', )";
$query= mysqli_query($con, $sql);
if ($muni == 'NAUCALPAN' OR 'HUIXQUILUCAN' )
{
nau($muni, $way_pay, $concept, $file_name);
}
elseif($muni == 'ACOLMAN' OR 'ATENCO' OR 'AXAPUSCO' OR 'CHIAUTLA' OR 'CHICOLOAPAN' OR 'CHICONCUAC' OR 'CHIMALHUACAN' OR 'NOPALTEPEC' OR 'OTUMBA' OR 'PAPALOTLA' OR 'LA PAZ' OR 'SAN MARTIN DE LAS PIRAMIDES' OR 'TEOTIHUACAN' OR 'TEPETLAOXTOC' OR 'TEXCOCO' OR 'TEZOYUCA')
{
tex( $muni, $way_pay, $concept, $file_name);
}
这里是我在 pdffunctions.php
中的函数
<?php
require('fpdf/fpdf.php');
class PDF extends FPDF
{}
function nau( $muni, $way_pay, $concept, $file_name){
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetTextColor(56,56,56);
$pdf->SetFont('Arial','B',7);
$pdf->SetMargins(10,10,10,10);
$pdf->SetY(53);
$pdf->Setx(45);
$pdf->Cell(45,12,utf8_decode(''.$muni),0, 0, 'L');
$pdf->Ln();
$pdf->Setx(45);
$pdf->Cell(45,12,utf8_decode(''. $way_pay),0, 0, 'L');
$pdf->SetY(56);
$pdf->Setx(108);
$pdf->MultiCell(60, 12, utf8_decode(''. $concept." TLANEPANTLA"),0, 0, 'L');
$pdf->Ln();
$pdf->Output('F', "pdfs/$file_name");
$pdf->Output();
};
function tex($muni, $way_pay, $concept, $file_name){
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetTextColor(56,56,56);
$pdf->SetFont('Arial','B',7);
$pdf->SetMargins(10,10,10,10);
$pdf->SetY(53);
$pdf->Setx(45);
$pdf->Cell(45,12,utf8_decode(''.$muni),0, 0, 'L');
$pdf->Ln();
$pdf->Setx(45);
$pdf->Cell(45,12,utf8_decode(''. $way_pay),0, 0, 'L');
$pdf->SetY(56);
$pdf->Setx(108);
$pdf->MultiCell(60, 4, utf8_decode(''. $concept."TEXCOCO"),0, 0, 'L');
$pdf->Output('F', "pdfs/$file_name");
$pdf->Output();
}
?>
您的 php if 陈述是基于误解。
if ($muni == 'NAUCALPAN' OR 'HUIXQUILUCAN' )
必须
if ($muni == 'NAUCALPAN' OR $muni == 'HUIXQUILUCAN' )
例如。
在您的版本中,首先计算 OR
,因此它计算 'NAUCALPAN' OR 'HUIXQUILUCAN'
作为表达式,计算结果为 true
(因为填充的字符串是 truth-y) ,因此您的 if 最终为 if ($muni == true)
,其中包含填充值和松散类型比较,最终也将始终为真(演示:https://3v4l.org/FbdIC)。
我正在尝试创建具有不同格式的 FPDF,这些格式位于一个函数文件中,该函数文件通过字段选择器 = muni 中的另一页上的表单调用,但它不尊重我的 if 并且总是采用第一个函数,你能指导我吗?
这是表格
<form id="clientForm" name="formularioDatos" method="post" action="insertBD.php" target="print_popup"
onsubmit="window.open('about:blank','print_popup','width=1000,height=800');">
<div class= col-md-3>
<select class="form-control input-lg" id="idMunicipio" name="idMunicipio" #>
<option value="" #>MUNICIPIO</option>
<option value="ACOLMAN">ACOLMAN</option>
<option value="ZUMPANGO">ZUMPANGO</option>
</select>
<input id="muni" name="muni" hidden="true">
</div>
<script>
$("#idMunicipio").change(function () {
// aqui vuelve a colocar el id de tu select, pero en esta ocación detectamos el valor que tiene el mismo
$("#idMunicipio option:selected").each(function () {
// luego guardas el valor en una variable
var muni = $(this).val();
$("#muni").val(muni);
});
});
</script>
这是数据库中的反插入:
<?php
include ("pdffunctions.php");
include("conn.php");
$con = connect();
$muni = mysqli_real_escape_string($con, $_POST['muni']);
$way_pay = mysqli_real_escape_string($con,$_POST['way_pay']);
$amount = mysqli_real_escape_string($con,$_POST['amount']);
$concept = mysqli_real_escape_string($con,$_POST['concept']);
$file_name = date("Y-m-d") . "_". $rfc.".pdf";
$sql = "INSERT INTO naucalpan(muni, way_pay, amount, concept, )VALUES('$muni', '$way_pay', '$amount', '$concept', )";
$query= mysqli_query($con, $sql);
if ($muni == 'NAUCALPAN' OR 'HUIXQUILUCAN' )
{
nau($muni, $way_pay, $concept, $file_name);
}
elseif($muni == 'ACOLMAN' OR 'ATENCO' OR 'AXAPUSCO' OR 'CHIAUTLA' OR 'CHICOLOAPAN' OR 'CHICONCUAC' OR 'CHIMALHUACAN' OR 'NOPALTEPEC' OR 'OTUMBA' OR 'PAPALOTLA' OR 'LA PAZ' OR 'SAN MARTIN DE LAS PIRAMIDES' OR 'TEOTIHUACAN' OR 'TEPETLAOXTOC' OR 'TEXCOCO' OR 'TEZOYUCA')
{
tex( $muni, $way_pay, $concept, $file_name);
}
这里是我在 pdffunctions.php
中的函数<?php
require('fpdf/fpdf.php');
class PDF extends FPDF
{}
function nau( $muni, $way_pay, $concept, $file_name){
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetTextColor(56,56,56);
$pdf->SetFont('Arial','B',7);
$pdf->SetMargins(10,10,10,10);
$pdf->SetY(53);
$pdf->Setx(45);
$pdf->Cell(45,12,utf8_decode(''.$muni),0, 0, 'L');
$pdf->Ln();
$pdf->Setx(45);
$pdf->Cell(45,12,utf8_decode(''. $way_pay),0, 0, 'L');
$pdf->SetY(56);
$pdf->Setx(108);
$pdf->MultiCell(60, 12, utf8_decode(''. $concept." TLANEPANTLA"),0, 0, 'L');
$pdf->Ln();
$pdf->Output('F', "pdfs/$file_name");
$pdf->Output();
};
function tex($muni, $way_pay, $concept, $file_name){
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetTextColor(56,56,56);
$pdf->SetFont('Arial','B',7);
$pdf->SetMargins(10,10,10,10);
$pdf->SetY(53);
$pdf->Setx(45);
$pdf->Cell(45,12,utf8_decode(''.$muni),0, 0, 'L');
$pdf->Ln();
$pdf->Setx(45);
$pdf->Cell(45,12,utf8_decode(''. $way_pay),0, 0, 'L');
$pdf->SetY(56);
$pdf->Setx(108);
$pdf->MultiCell(60, 4, utf8_decode(''. $concept."TEXCOCO"),0, 0, 'L');
$pdf->Output('F', "pdfs/$file_name");
$pdf->Output();
}
?>
您的 php if 陈述是基于误解。
if ($muni == 'NAUCALPAN' OR 'HUIXQUILUCAN' )
必须
if ($muni == 'NAUCALPAN' OR $muni == 'HUIXQUILUCAN' )
例如。
在您的版本中,首先计算 OR
,因此它计算 'NAUCALPAN' OR 'HUIXQUILUCAN'
作为表达式,计算结果为 true
(因为填充的字符串是 truth-y) ,因此您的 if 最终为 if ($muni == true)
,其中包含填充值和松散类型比较,最终也将始终为真(演示:https://3v4l.org/FbdIC)。