Динамическая таблица с HTML и PHP - PullRequest
0 голосов
/ 21 ноября 2018

Я покажу вам мою следующую проблему .. У меня в основном есть следующая база данных .., чтобы понять ее, я думаю, что практический пример - лучший способ ..

У меня есть строительная площадка, где могут вмешаться N доверенных лиц,эти N доверенных лиц могут, в свою очередь, делегировать N субпартнеров.затем, получая суммы, у меня есть некоторые отношения между тремя таблицами (которые на моем языке "Cantiere" "Affidataria" "SubAffidataria")

Создание сайта 1 ------> N Надежно

Relater 1 -----> N Sub-Affidiates

Сказав, что моя проблема заключается в следующем, я должен создать панель управления, в которой для каждой строительной площадки я должен показывать опекунов и субподрядчика.-contractors.Я хотел бы отметить, что у субпартнеров нет «прямых» связей с верфями, но у них есть FK филиалов

. Он должен быть структурирован следующим образом ...

Под каждым релевантным ("Affidataria") результаты запроса $ sql1 должны быть помещены Под каждым дочерним предприятием ("SubAffidatari") должны быть помещены результаты запроса $ sql2.

Вопрос в том, как мне все разделить на столбцы?Я попытался создать динамическую таблицу HTML ... но она не работает ..

Я прилагаю свое доказательство ...

<!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 } ?>

, и вот результат, который я получил:

enter image description here

Ответы [ 2 ]

0 голосов
/ 22 ноября 2018

Попробуйте ввести следующий код ..

<!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 } ?>
0 голосов
/ 22 ноября 2018

Попробуйте, но я не уверен, что это то, что вы просили, потому что я не понял, что вы хотели.

    <?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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...