我有两个表:
表clienti:
CodClient | NumeClient | AdresaClient
_____________________________________
1 | cosmin | sibiu
2 | alex | brasov
表facturi:
CodClient | NrFactura | DataFactura
_____________________________________
1 | 654321 | 2015-02-21
2 | 123456 | 2015-02-22
CodClient=两个表之间的链接。
我有一个页面,其中有一个包含上表信息的表格:
NumeClient | AdresaClient | NrFactura | DataFactura
cosmin | sibiu | 654321 | 2015-02-21 | Open separate
alex | brasov | 123456 | 2015-02-22 | Open separate
当我点击"打开单独"按钮时,它会将我带到这个页面,在那里我可以单独看到每一行打开单独的按钮将CodClient发送到此页面:
<?php
include('connect.php');
$CodClient=$_GET['CodClient'];
$CodClient = mysqli_real_escape_string($con,$CodClient);
$rez=mysqli_query($con,"SELECT NumeClient, AdresaClient, NrFactura, DataFactura, FacturaRetea FROM clienti c join facturi f on c.CodClient = f.CodClient");
$rows=mysqli_fetch_array($rez);
?>
<div class="factura_header">
<img src="img/logo2.png">
</div>
<div class="factura_stanga">
<p>Client: <?php echo $rows['NumeClient'];?></p>
<p>Adresa: <?php echo $rows['AdresaClient'];?></p>
</div>
<div class="factura_dreapta">
<p>Numar factura: <?php echo $rows['NrFactura'];?></p>
<p>Data Factura: <?php echo $rows['DataFactura'];?></p>
</div>
<div class="despartitor">
</div>
</div>
<?php
mysqli_close($con);
?>
问题是,无论我打开哪一行,它都会向我显示相同的信息。如果我单击第一个"打开分隔",它会显示带有"cosmin-sibiu"的信息,如果我单击第二个"打开隔离",它也会显示"cosmin-sbiu",尽管在浏览器地址栏中我看到了corect-CodClient。我做错了什么?抱歉我英语不好。
在您的SQL中,您没有传递$CodClient
id,而是简单地根据属性之间的一般关系连接两个SQL表。。。您需要添加类似SELECT NumeClient, AdresaClient, NrFactura, DataFactura, FacturaRetea FROM clienti c join facturi f on c.CodClient = f.CodClient where c.CodClient = 10 /* this is your $CodClient id from URL */
的内容。。。显然要确保它不受注射等的影响。