Reputation: 91
I show you my following problem .. I basically have the following database .. to understand it I think a practical example is the best way ..
I have a building site where N entrusters can intervene, these N trustees can in turn delegate N Sub-Affidiates. then pulling the sums I have some relationships between the three tables (which in my language are "Cantiere" "Affidataria" "SubAffidataria")
Building site 1 ------> N Reliable
Relater 1 -----> N Sub-Affidiates
Having said that my problem is the following I have to do a control panel in which for each construction site I have to show the carers and the sub-contractors. I would like to point out that the Sub-Affiliates do not have "direct" links with the Shipyards, but they have the FK of the Affilatories
It must be structured as follows ...
Under Each Relevant ("Affidataria") the results of the $ sql1 query must be placed Under each Subsidiary ("SubAffidatari") the results of the $ sql2 query must be placed.
The question is how do I divide everything by columns? I tried creating a dynamic HTML table .. but it does not work ..
I am attaching my proof ...
<!DOCTYPE html>
<?php
session_start();
if(!isset($_SESSION["username"])){
header('location: ../index.php');
}else
{
?>
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "my_progettocantiere";
$idCantiere = $_GET["idCantiere"];
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT idCantiere,nomeCantiere,codiceCommessa,indirizzoCantiere FROM Cantiere WHERE idCantiere = '$idCantiere'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo'<h1 align="center">' . $row["codiceCommessa"] . '-' . $row["nomeCantiere"] . '</h1>';
}
} else {
echo "0 results";
}
$conn1 = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn1->connect_error) {
die("Connection failed: " . $conn1->connect_error);
}
$sql1 = "SELECT idAffidataria,nomeCantiere FROM Affidataria WHERE fkIDCantiere = '$idCantiere'";
$result1 = $conn1->query($sql1);
//echo "<script type='text/javascript'>alert('$idAffidataria');</script>";
if ($result1->num_rows > 0)
{
// output data of each row
while($row1 = $result1->fetch_assoc())
{
echo'<br><br><br>';
echo '<h1> Affidataria</h1>';
echo '<a class="myButton" href="../../pagineHtml/visualizza/visualizzazione/affidatario.php?idAffidataria=' . $row1["idAffidataria"] . '">' . $row1["nomeCantiere"] . '</a>';
echo '<h1> SubAffidatario</h1>';
$idAffidataria = $row1["idAffidataria"];
$conn2 = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn2->connect_error)
{
die("Connection failed: " . $conn2->connect_error);
}
$sql2 = "SELECT * FROM SubAffidatario WHERE fkIdAffidataria = '$idAffidataria'";
$result2 = $conn2->query($sql2);
if ($result2->num_rows > 0)
{
// output data of each row
while($row2 = $result2->fetch_assoc())
{
// echo '<a class="myButton" href="../../pagineHtml/visualizza/visualizzazione/affidatario.php?idAffidataria=' . $row1["idAffidataria"] . '">' . $row1["nomeCantiere"] . '</a>';
echo'<br><br><br>';
echo '<a class="myButton" href="../../pagineHtml/visualizza/visualizzazione/affidatario.php?idAffidataria=' . $row2["ragioneSocialeSubAffidatario"] . '">' . $row2["ragioneSocialeSubAffidatario"] . '</a>';
}
//echo'<br><br><br>';
//echo '<a href="../pagineHtml/inserimento/inserimentoGenerale/inserimentoCantiere.php" class="myButton" alt="Nuovo Cantiere +">Nuovo Cantiere +</a>';
}
else {
echo "0 results";
}
}
//echo'<br><br><br>';
//echo '<a href="../pagineHtml/inserimento/inserimentoGenerale/inserimentoCantiere.php" class="myButton" alt="Nuovo Cantiere +">Nuovo Cantiere +</a>';
}
else
{
echo "0 results";
}
$conn->close();
$conn1->close();
$conn2->close();
?>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Progetto Cantiere</title>
<!-- Bootstrap -->
<link href="../paginaIniziale/css/bootstrap-4.0.0.css" rel="stylesheet">
</head>
<style>
.myButton {
-moz-box-shadow:inset 0px 1px 0px 0px #97c4fe;
-webkit-box-shadow:inset 0px 1px 0px 0px #97c4fe;
box-shadow:inset 0px 1px 0px 0px #97c4fe;
background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #3d94f6), color-stop(1, #1e62d0));
background:-moz-linear-gradient(top, #3d94f6 5%, #1e62d0 100%);
background:-webkit-linear-gradient(top, #3d94f6 5%, #1e62d0 100%);
background:-o-linear-gradient(top, #3d94f6 5%, #1e62d0 100%);
background:-ms-linear-gradient(top, #3d94f6 5%, #1e62d0 100%);
background:linear-gradient(to bottom, #3d94f6 5%, #1e62d0 100%);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#3d94f6', endColorstr='#1e62d0',GradientType=0);
background-color:#3d94f6;
-moz-border-radius:6px;
-webkit-border-radius:6px;
border-radius:6px;
border:1px solid #0f73ff;
display:inline-block;
cursor:pointer;
color:#ffffff;
font-family:Arial;
font-size:28px;
font-weight:bold;
padding:32px 76px;
text-decoration:none;
text-shadow:0px 1px 0px #1570cd;
}
.myButton:hover {
background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #1e62d0), color-stop(1, #3d94f6));
background:-moz-linear-gradient(top, #1e62d0 5%, #3d94f6 100%);
background:-webkit-linear-gradient(top, #1e62d0 5%, #3d94f6 100%);
background:-o-linear-gradient(top, #1e62d0 5%, #3d94f6 100%);
background:-ms-linear-gradient(top, #1e62d0 5%, #3d94f6 100%);
background:linear-gradient(to bottom, #1e62d0 5%, #3d94f6 100%);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#1e62d0', endColorstr='#3d94f6',GradientType=0);
background-color:#1e62d0;
}
.myButton:active {
position:relative;
top:1px;
}
</style>
<body>
</body>
</html>
<?php } ?>
and this is the result I got:
Upvotes: 1
Views: 65
Reputation: 189
Try this, but I'm not sure if it's what you asked for, because I did not understand what you wanted.
<?php
session_start();
if(!isset($_SESSION["username"])){
header('location: ../index.php');
}
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "my_progettocantiere";
$idCantiere = $_GET["idCantiere"];
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error)
{
die("Connection failed: " . $conn->connect_error);
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Progetto Cantiere</title>
<!-- Bootstrap -->
<link href="../paginaIniziale/css/bootstrap-4.0.0.css" rel="stylesheet">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<div class="row">
<?php
$sql = "SELECT idCantiere,nomeCantiere,codiceCommessa,indirizzoCantiere FROM Cantiere WHERE idCantiere = '$idCantiere'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc())
{
?>
<div class="col-sm-12">
<h1> <?php echo $row["codiceCommessa"] . '-' . $row["nomeCantiere"] ?></h1>
</div>
<?php
}
} else {
echo "0 results";
}
?>
</div>
<?php
$sql1 = "SELECT idAffidataria,nomeCantiere FROM Affidataria WHERE fkIDCantiere = '$idCantiere'";
$result1 = $conn->query($sql1);
if ($result1->num_rows > 0)
{
// output data of each row
while($row1 = $result1->fetch_assoc())
{
?>
<div class="row">
<div class="col-sm-11 offset-sm-1">
<h1>Affidataria</h1>
<a class="myButton" href="../../pagineHtml/visualizza/visualizzazione/affidatario.php?idAffidataria= <?php echo $row1["idAffidataria"] ?>">
<?php echo $row1["nomeCantiere"] ?>
</a>
</div>
<div class="col-sm-6 offset-sm-2">
<h1>SubAffidatario</h1>
<?php
$idAffidataria = $row1["idAffidataria"];
$sql2 = "SELECT * FROM SubAffidatario WHERE fkIdAffidataria = '$idAffidataria'";
$result2 = $conn->query($sql2);
if ($result2->num_rows > 0)
{
// output data of each row
while($row2 = $result2->fetch_assoc())
{
?>
<div class="col-sm-10">
<br>
<a class="myButton" href="../../pagineHtml/visualizza/visualizzazione/affidatario.php?idAffidataria=<?php echo $row2["ragioneSocialeSubAffidatario"] ?>">
<?php echo $row2["ragioneSocialeSubAffidatario"] ?>
</a>
</div>
<?php
}
}else {
echo "0 results";
}
}
?>
</div>
<?php
}else{
echo "0 results";
}
$conn->close();
?>
</div>
</div>
</body>
</html>
Upvotes: 0
Reputation: 147
Try with the following code ..
<!DOCTYPE html>
<?php
session_start();
if(!isset($_SESSION["username"])){
header('location: ../index.php');
}else
{
?>
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "my_progettocantiere";
$idCantiere = $_GET["idCantiere"];
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT idCantiere,nomeCantiere,codiceCommessa,indirizzoCantiere FROM Cantiere WHERE idCantiere = '$idCantiere'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo'<h1 align="center">' . $row["codiceCommessa"] . '-' . $row["nomeCantiere"] . '</h1>';
}
} else {
echo "0 results";
}
$conn1 = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn1->connect_error) {
die("Connection failed: " . $conn1->connect_error);
}
$sql1 = "SELECT * FROM Affidataria WHERE fkIDCantiere = '$idCantiere'";
$result1 = $conn1->query($sql1);
//echo "<script type='text/javascript'>alert('$idAffidataria');</script>";
if ($result1->num_rows > 0)
{
// output data of each row
while($row1 = $result1->fetch_assoc())
{
echo '<table align="center" border="3px" width = "900px">';
echo '<tr>';
echo '<td><h1>Anagrafica</h1>';
echo '<td><h1> Affidataria</h1></td>';
echo '<td><h1> SubAffidatario</h1></td></tr>';
echo '<tr><td><a class="myButton" href="../../pagineHtml/modifica/modifica/inserimentoCantiere.php?idCantiere=' . $row1["fkIDCantiere"] . '">Anagrafica</a></td>';
echo '<td><a class="myButton" href="../../pagineHtml/modifica/modifica/affidatario.php?idAffidataria=' . $row1["idAffidataria"] . '">' . $row1["nomeCantiere"] . '</a></td></tr>';
$idAffidataria = $row1["idAffidataria"];
$conn2 = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn2->connect_error)
{
die("Connection failed: " . $conn2->connect_error);
}
$sql2 = "SELECT * FROM SubAffidatario WHERE fkIdAffidataria = '$idAffidataria'";
$result2 = $conn2->query($sql2);
if ($result2->num_rows > 0)
{
// output data of each row
while($row2 = $result2->fetch_assoc())
{
// echo '<a class="myButton" href="../../pagineHtml/visualizza/visualizzazione/affidatario.php?idAffidataria=' . $row1["idAffidataria"] . '">' . $row1["nomeCantiere"] . '</a>';
echo'<br><br><br>';
echo '<tr>';
echo '<td></td>';
echo '<td></td>';
echo '<td><a class="myButton" href="../../pagineHtml/modifica/modifica/subAffidatario.php?idSubAffidatario=' . $row2["idSubAffidatario"] . '">' . $row2["ragioneSocialeSubAffidatario"] . '</a></td>';
}
//echo'<br><br><br>';
//echo '<a href="../pagineHtml/inserimento/inserimentoGenerale/inserimentoCantiere.php" class="myButton" alt="Nuovo Cantiere +">Nuovo Cantiere +</a>';
}
else {
echo "0 results";
}
}
//echo'<br><br><br>';
//echo '<a href="../pagineHtml/inserimento/inserimentoGenerale/inserimentoCantiere.php" class="myButton" alt="Nuovo Cantiere +">Nuovo Cantiere +</a>';
}
else
{
echo "0 results";
}
echo'</tr>';
echo '</table>';
$conn->close();
$conn1->close();
$conn2->close();
?>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Progetto Cantiere</title>
<!-- Bootstrap -->
<link href="../paginaIniziale/css/bootstrap-4.0.0.css" rel="stylesheet">
</head>
<style>
.myButton {
-moz-box-shadow:inset 0px 1px 0px 0px #97c4fe;
-webkit-box-shadow:inset 0px 1px 0px 0px #97c4fe;
box-shadow:inset 0px 1px 0px 0px #97c4fe;
background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #3d94f6), color-stop(1, #1e62d0));
background:-moz-linear-gradient(top, #3d94f6 5%, #1e62d0 100%);
background:-webkit-linear-gradient(top, #3d94f6 5%, #1e62d0 100%);
background:-o-linear-gradient(top, #3d94f6 5%, #1e62d0 100%);
background:-ms-linear-gradient(top, #3d94f6 5%, #1e62d0 100%);
background:linear-gradient(to bottom, #3d94f6 5%, #1e62d0 100%);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#3d94f6', endColorstr='#1e62d0',GradientType=0);
background-color:#3d94f6;
-moz-border-radius:6px;
-webkit-border-radius:6px;
border-radius:6px;
border:1px solid #0f73ff;
display:inline-block;
cursor:pointer;
color:#ffffff;
font-family:Arial;
font-size:28px;
font-weight:bold;
padding:32px 76px;
text-decoration:none;
text-shadow:0px 1px 0px #1570cd;
}
.myButton:hover {
background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #1e62d0), color-stop(1, #3d94f6));
background:-moz-linear-gradient(top, #1e62d0 5%, #3d94f6 100%);
background:-webkit-linear-gradient(top, #1e62d0 5%, #3d94f6 100%);
background:-o-linear-gradient(top, #1e62d0 5%, #3d94f6 100%);
background:-ms-linear-gradient(top, #1e62d0 5%, #3d94f6 100%);
background:linear-gradient(to bottom, #1e62d0 5%, #3d94f6 100%);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#1e62d0', endColorstr='#3d94f6',GradientType=0);
background-color:#1e62d0;
}
.myButton:active {
position:relative;
top:1px;
}
</style>
<body>
</body>
</html>
<?php } ?>
Upvotes: 1