Gestione completa di una tabella del Database... impossibile

  • Creatore Discussione Creatore Discussione amicofl
  • Data di inizio Data di inizio

amicofl

Nuovo Utente
13 Lug 2015
2
0
0
Pensavo che il linguaggio PHP fosse uguale per tutto e per tutti.
Mi sbagliavo...
Devo completare un progetto che prevede la costruzione di una pagina con la quale inserire dei dati di un intervento in un database, ma anche di modificarli e di eliminarli.

Un progetto funzionante, che riguardava un database collegato in POSTGRESS è il seguente


PHP:
<?php
Session_Start();
require_once ("DB.php");
$db=DB::connect("pgsql://vc:hplaserjet@lab.isit100.fe.it/vc2014-lio");
if(DB::isError($db)){
    die("Errore di connessione: ".$db->getMessage());
}
if(empty($_SESSION['username'])){
    header("location: login.php?pagina={$_SERVER['PHP_SELF']}");
}
if ($_SESSION['ruolo']!='admin'){
    die ("accesso non autorizzato");
}


function getVar($nome) {
    if (!empty($_REQUEST[$nome])) {
        return $_REQUEST[$nome];
    } else {
        return "";
    }
}

$legend = "inserimento";
$nuovoOp = "INSERT";
$op = getVar('op');
if ($op == 'DEL') {
    cancella();
}
if ($op == 'EDIT') {
    $riga = cerca();
    $nuovoOp = "UPDATE";
    $legend = "modifica";
}
if ($op == 'UPDATE') {
    modifica();
}
if ($op == 'INSERT') {
    $legend = "inserimento";
    inserisci();
}
if (empty($riga)) {
    $riga->codam == "";
    $riga->nome == "";
    $riga->cognome == "";
    $riga->username == "";
    $riga->password == "";
}
?>
<html>
    <head>
        <title> Getsione Ammistratori </title>
    </head>
    <body>
        <div class="container-fluid">
            <header>
                <h1>Amministratori</h1>
            </header>
            <section ID="modulo">
                <form action="<?= $_SERVER['PHP_SELF'] ?>" method="POST">
                    <filedset>
                        <legend> <?= $legend ?> </legend>
                        <p>
                            <label for="codam">codice</label>
                            <input type="text" name="codam" id="codam" value="<?= $riga->codam ?>">
                        </p>
                        <p>
                            <label for="cognome">cognome</label>
                            <input type="text" name="cognome" id="cognome" value="<?= $riga->cognome ?>">
                        </p>
                        <p>
                            <label for="nome">nome</label>
                            <input type="text" name="nome" id="nome" value="<?= $riga->nome ?>">
                        </p>
                        <p>
                            <label for="username">username</label>
                            <input type="text" name="username" id="username" value="<?= $riga->username ?>">
                        </p>
                        <p>
                            <label for="password">password</label>
                            <input type="text" name="password" id="password" value="<?= $riga->password ?>">
                        </p>
                        <p>
                            <input type="submit" value="registra" >
                            <input type="hidden" name="op" value="<?= $nuovoOp ?>">
                        </p>
                    </filedset>
                </form>
            </section>
            <section id="tabella">
                <?php
                $elenco = getAmministratori();
                if (count($elenco) == 0) {
                    print "<h1>Nessun Amministratore </h1>";
                } else {
                    ?>
                    <table class="table table-boarder">
                        <thead>
                            <tr>
                                <th>codice</th>
                                <th>cognome</th>
                                <th>nome</th> 
                                <th>username</th>
                                <th>Modifica/Elimina</th>
                            </tr>
                        </thead>
                        <tbody>
                            <?php foreach ($elenco as $riga) { ?>
                                <tr>
                                    <td><?= $riga->codam ?></td>
                                    <td><?= $riga->cognome ?></td>
                                    <td><?= $riga->nome ?></td>
                                    <td><?= $riga->username ?></td>
                                    <td><a href='<?= $_SERVER['PHP_SELF'] ?>?codam=<?= $riga->codam ?>&op=EDIT'>Modifica</a>
                                        <a href='<?= $_SERVER['PHP_SELF'] ?>?codam=<?= $riga->codam ?>&op=DEL'>Elimina</a></td>
                                </tr>
                            <?php } ?>
                        </tbody>
                    </table>
                <?php }
                ?>
            </section>
        </div>
    </body>
</html>
<?php

function cerca() {
    global $db;
    $sql = "select * "
            . " from amministratori"
            . " where codam=" . getVar('codam') . "";
    if (!DB::isError($tab = $db->query($sql))) {
        if ($riga = $tab->fetchRow(DB_FETCHMODE_OBJECT)) {
            return $riga;
        }
    } else {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
        return null;
    }
}

function getAmministratori() {
    global $db;
    $sql = "select * "
            . " from amministratori ";
    $elenco = array();
    if (!DB::isError($tab = $db->query($sql))) {
        while ($riga = $tab->fetchRow(DB_FETCHMODE_OBJECT)) {
            $elenco[] = $riga;
        }
    } else {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
    return $elenco;
}

function inserisci() {
    global $db;
    $sql = "insert into amministratori (cognome,nome,username,password)"
            . " values('" . getVar('cognome') . "','" . getVar('nome') . "','" . getVar('username') . "','" . getVar('password') . "')";
    if (DB::isError($tab = $db->query($sql))) {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}

function modifica() {
    global $db;
    $sql = "update amministratori "
            . " set cognome = '" . getVar('cognome') . "'"
            . " , nome = '" . getVar('nome') . "'"
            . " , username = '" . getVar('username') . "'"
            . " , password = '" . getVar('password') . "'"
            . " where codam=" . getVar('codam') . "";
    if (DB::isError($tab = $db->query($sql))) {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}

function cancella() {
    global $db;
    $sql = "delete from amministratori"
            . " where codam=" . getVar('codam') . "";
    if (DB::isError($tab = $db->query($sql))) {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}

Ma ora non ho un database di Postegress al quale collegarmi. Devo utilizzare un server, locale, di MYSQLi.


Ho porvato ad applicare la stessa logica alla nuova situazione. Il risultato è stato disastroso. Non si riusciva nemmeno a collegare.
Ho trovato poi su internet un metodo per collegarmi

PHP:
<?php

$servername = "localhost";

$username = "test";

$password = "";

$dbname = "test";


// Create connection

$db = new mysqli($servername, $username, $password, $dbname);


// Check connection

if ($db->connect_error) {

    die("Connection failed: " . $db->connect_error);

} 
$a= mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
echo "Connected successfully ".$a." ";

?>
Sono così riuscito a collegarmi, ma mi sono accorto che il metodo per prendere i valori che derivano delle interrogazioni SQL al database non davano alcun valore, nonostante le prove su phpmyadmin avessero dato esito positivo (ossia dei risultati).

Molti erano gli errori:

1)
PHP:
fetchRow(DB_FETCHMODE_OBJECT)
non veniva riconosciuto come comando.

ho docuto ripiegare, dopo tanti, ma tanti tentativi a

PHP:
fetch_array()

ma anche qui poi ho dovuto modificare come estrapolavo e visualizzavo i valori dell'interrogazione.

fetchRow era fondamentale per formare nelle function che incominciano per getOptionCod... () l'elenco a discesa dei dati, ma anche quali valori compongono il dato selezionato

PHP:
<?= $riga->Username ?>

fatto nella funzione dove potevo controllare anche se il vlore

che dava il seguente errore

Notice: Trying to get property of non-object

a

PHP:
print "<option value='".$riga['codiceCliente']."'> ".$riga['username']." </option>"

Perdendo, in pratica la possibilità di far visualizzare quali sono i dati che compongono quel valore tramite il campo
PHP:
selected="selected"

Il codice che sono riuscito a produrre è il seguente

PHP:
<?php
require "connessione.php";
$legend = "inserimento";
$nuovoOp = "INSERT";

function getVar($nome) {
    if (!empty($_REQUEST[$nome])) {
        return $_REQUEST[$nome];
    } else {
        return "";
    }
}

$op = getVar('op');
if ($op == 'DEL') {
    cancella();
}
if ($op == 'EDIT') {
    $riga = cerca();
    $nuovoOp = "UPDATE";
    $legend = "modifica";
}
if ($op == 'UPDATE') {
    modifica();
}
if ($op == 'INSERT') {
    $legend = "inserimento";
    inserisci();
}
if (empty($riga)) {
    $riga['codCliente'] = "";
    $riga['codTecnico'] = "";
    $riga['codF'] = "";
    $riga['descrizioneIntervento'] = "";
    $riga['altro'] = "";
    $riga['trasferta'] = "";
    $riga['codL'] = "";
    $riga['inizioIntervento'] = "";
    $riga['fineIntervento'] = "";
    $riga['codTF'] = "";
    $riga['codTT'] = "";
    $riga['materialeUtilizzato'] = "";
}
?>
<html>
    <head>
        <title>
            Inserimento I-Calender
        </title>
    </head>
    <body>
        <h1>Inserimento I-Calender</h1>
        <form method="POST" action="<?php $_SERVER['PHP_SELF'] ?>">
            <legend>Inserimento I-Calender</legend>
            <p>
                <select id="codT" name="codT">
                    <option value="">Inserisci Tecnico</option>
                    <?php
                    $elenco = getOptioncodT();
                    foreach ($elenco as $riga) {
                        print "<option value='" . $riga['codice'] . "'> " . $riga['username'] . " </option>";
                    }
                    ?>
                </select>
            </p>
            <p>
                <select id="codC" name="codC">
                    <option value="">Inserisci Cliente</option>
                    <?php
                    $elenco = getOptioncodC();
                    foreach ($elenco as $riga) {
                        print "<option value='" . $riga['codice'] . "'> " . $riga['username'] . " </option>";
                    }
                    ?>
                </select>
            </p>
            <p>
                <select id="codF" name="codF">
                    <option value="">Inserisci Fornitore</option>
                    <?php
                    $elenco = getOptioncodF();
                    foreach ($elenco as $riga) {
                        print "<option value='" . $riga['codF'] . "'> " . $riga['fornitore'] . " </option>";
                    }
                    ?>
                </select>
            <p>
                <label for id="descrizioneIntervento">Descrizione Intervento</label>
                <input type="text" name="descrizioneIntervento" id="descrizioneIntervento" value="<?= $riga['descrizioneIntervento'] ?>">
            </p>
            <p>
                <label for id="altro">Altro</label>
                <input type="text" name="altro" id="altro" value="<?= $riga['altro'] ?>">
            </p>
            <p>
                <label for id="trasferta">Trasferta (S/N)</label>
                <input type="text" name="trasferta" id="trasferta" value="<?= $riga['trasferta'] ?>">
            </p>

            <p>
                <select id="codL" name="codL">
                    <option value="">Inserisci Luogo</option>
                    <?php
                    $elenco = getOptioncodL();
                    foreach ($elenco as $riga) {
                        print "<option value='" . $riga['codL'] . "'> " . $riga['luogo'] . " </option>";
                    }
                    ?>
                </select>
            </p>
            <p>
                <label for="giornoInizioIntervento">GG/MM/AAAA HH:MM Inizio Lavori</label>
                <select id="giornoInizioIntervento" name="giornoInizioIntervento">
                    <option value="1">1</option>
                    <option value="2">2</option>
                    <option value="3">3</option>
                    <option value="4">4</option>
                    <option value="5">5</option>
                    <option value="6">6</option>
                    <option value="7">7</option>
                    <option value="8">8</option>
                    <option value="9">9</option>
                    <option value="10">10</option>
                    <option value="11">11</option>
                    <option value="12">12</option>
                    <option value="13">13</option>
                    <option value="14">14</option>
                    <option value="15">15</option>
                    <option value="16">16</option>
                    <option value="17">17</option>
                    <option value="18">18</option>
                    <option value="19">19</option>
                    <option value="20">20</option>
                    <option value="21">21</option>
                    <option value="22">22</option>
                    <option value="23">23</option>
                    <option value="24">24</option>
                    <option value="25">25</option>
                    <option value="26">26</option>
                    <option value="27">27</option>
                    <option value="28">28</option>
                    <option value="29">29</option>
                    <option value="30">30</option>
                    <option value="31">31</option>
                </select>
                <select id="meseInizioIntervento" name="meseInizioIntervento">
                    <option value="1">1</option>
                    <option value="2">2</option>
                    <option value="3">3</option>
                    <option value="4">4</option>
                    <option value="5">5</option>
                    <option value="6">6</option>
                    <option value="7">7</option>
                    <option value="8">8</option>
                    <option value="9">9</option>
                    <option value="10">10</option>
                    <option value="11">11</option>
                    <option value="12">12</option>
                </select>
                <select id="annoInizioIntervento" name="annoInizioIntervento">
                    <option value="2015">2015</option>
                    <option value="2016">2016</option>
                    <option value="2017">2017</option>
                    <option value="2018">2018</option>
                    <option value="2019">2019</option>
                    <option value="2020">2020</option>
                </select>
                <select id="oraInizioIntervento" name="oraInizioIntervento">
                    <option value="1">1</option>
                    <option value="2">2</option>
                    <option value="3">3</option>
                    <option value="4">4</option>
                    <option value="5">5</option>
                    <option value="6">6</option>
                    <option value="7">7</option>
                    <option value="8">8</option>
                    <option value="9">9</option>
                    <option value="10">10</option>
                    <option value="11">11</option>
                    <option value="12">12</option>
                    <option value="13">13</option>
                    <option value="14">14</option>
                    <option value="15">15</option>
                    <option value="16">16</option>
                    <option value="17">17</option>
                    <option value="18">18</option>
                    <option value="19">19</option>
                    <option value="20">20</option>
                    <option value="21">21</option>
                    <option value="22">22</option>
                    <option value="23">23</option>
                    <option value="24">24</option>
                </select>
                <select id="minutiInizioIntervento" name="minutiInizioIntervento">
                    <option value="00">00</option>
                    <option value="15">15</option>
                    <option value="30">30</option>
                    <option value="45">45</option>
                </select>
            </p>
            <p>
                <label for="giornoFineIntervento">GG/MM/AAAA HH:MM Fine Lavori</label>
                <select id="giornoFineIntervento" name="giornoFineIntervento">
                    <option value="1">1</option>
                    <option value="2">2</option>
                    <option value="3">3</option>
                    <option value="4">4</option>
                    <option value="5">5</option>
                    <option value="6">6</option>
                    <option value="7">7</option>
                    <option value="8">8</option>
                    <option value="9">9</option>
                    <option value="10">10</option>
                    <option value="11">11</option>
                    <option value="12">12</option>
                    <option value="13">13</option>
                    <option value="14">14</option>
                    <option value="15">15</option>
                    <option value="16">16</option>
                    <option value="17">17</option>
                    <option value="18">18</option>
                    <option value="19">19</option>
                    <option value="20">20</option>
                    <option value="21">21</option>
                    <option value="22">22</option>
                    <option value="23">23</option>
                    <option value="24">24</option>
                    <option value="25">25</option>
                    <option value="26">26</option>
                    <option value="27">27</option>
                    <option value="28">28</option>
                    <option value="29">29</option>
                    <option value="30">30</option>
                    <option value="31">31</option>
                </select>
                <select id="meseFineIntervento" name="meseFineIntervento">
                    <option value="1">1</option>
                    <option value="2">2</option>
                    <option value="3">3</option>
                    <option value="4">4</option>
                    <option value="5">5</option>
                    <option value="6">6</option>
                    <option value="7">7</option>
                    <option value="8">8</option>
                    <option value="9">9</option>
                    <option value="10">10</option>
                    <option value="11">11</option>
                    <option value="12">12</option>
                </select>
                <select id="annoFineIntervento" name="annoFineIntervento">
                    <option value="2015">2015</option>
                    <option value="2016">2016</option>
                    <option value="2017">2017</option>
                    <option value="2018">2018</option>
                    <option value="2019">2019</option>
                    <option value="2020">2020</option>
                </select>
                <select id="oreFineIntervento" name="oreFineIntervento">
                    <option value="0">0</option>
                    <option value="1">1</option>
                    <option value="2">2</option>
                    <option value="3">3</option>
                    <option value="4">4</option>
                    <option value="5">5</option>
                    <option value="6">6</option>
                    <option value="7">7</option>
                    <option value="8">8</option>
                    <option value="9">9</option>
                    <option value="10">10</option>
                    <option value="11">11</option>
                    <option value="12">12</option>
                    <option value="13">13</option>
                    <option value="14">14</option>
                    <option value="15">15</option>
                    <option value="16">16</option>
                    <option value="17">17</option>
                    <option value="18">18</option>
                    <option value="19">19</option>
                    <option value="20">20</option>
                    <option value="21">21</option>
                    <option value="22">22</option>
                    <option value="23">23</option>
                </select>
                <select id="minutiFineIntervento" name="minutiFineIntervento">
                    <option value="00">00</option>
                    <option value="15">15</option>
                    <option value="30">30</option>
                    <option value="45">45</option>
                </select>
            </p>
            <p>
                <select id="codTF" name="codTF">
                    <option value="">Inserisci Tipo Fattura</option>
                    <?php
                    $elenco = getOptioncodTF();
                    foreach ($elenco as $riga) {
                        print "<option value='" . $riga['codTF'] . "'> " . $riga['tipoFatturazione'] . " </option>";
                    }
                    ?>
                </select>
            </p>
            <p>
                <select id="codTT" name="codTT">
                    <option value="">Inserisci Tipo Tariffa</option>
                    <?php
                    $elenco = getOptioncodTT();
                    foreach ($elenco as $riga) {
                        print "<option value='" . $riga['codTT'] . "'> " . $riga['tipoTariffa'] . " </option>";
                    }
                    ?>
                </select>
            </p>
            <p>
                <label for id="materialeUtilizzato">Materiale Utilizzato</label>
                <input type="text" name="materialeUtilizzato" id="materialeUtilizzato" value="<?= $riga['materialeUtilizzato'] ?>">
            </p>
            <p>
                <input type="submit" value="registra" >
                <input type="hidden" name="op" value="<?= $nuovoOp ?>">
            </p>

        </form>

    </body>
    <!-- Latest compiled and minified CSS -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">

    <!-- Optional theme -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css">

    <!-- Latest compiled and minified JavaScript -->
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
</html>
<?php

function cerca() {
    global $db;
    $sql = "select * "
            . " from tssij_interventi"
            . " where codI=" . getVar('codI') . "";
    if (!DB::isError($tab = $db->query($sql))) {
        if ($riga = $tab->fetch_array()) {
            return $riga;
        }
    } else {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
        return null;
    }
}

function getInterventi() { //dovrebbe contenere gli interventi del tecnico
    global $db;
    $sql = "select * "
            . " from tssij_interventi"
            . " order by ";
    $elenco = array();
    if (!DB::isError($tab = $db->query($sql))) {
        while ($riga = $tab->fetchRow(DB_FETCHMODE_OBJECT)) {
            $elenco[] = $riga;
        }
    } else {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
    return $elenco;
}

function inserisci() {
    global $db;
    $sql = "insert into tssij_interventi (codT,codC,codF,descrizioneIntervento,altro,trasferta,codL,giornoInizioIntervento,meseInizioIntervento,annoInizioIntervento,oraInizioIntervento,minutiInizioIntervento,codTF,codTT,materialeUtilizzato)"
            . " values('" . getVar('codT') . "','" . getVar('codC') . "','" . getVar('codF') . "','" . getVar('descrizioneIntervento') . "','" . getVar('altro') . "','" . getVar('trasferta') . "','" . getVar('codL') . "','" . getVar('giornoInizioIntervento') . "','" . getVar('meseInizioIntervento') . "','" . getVar('annoInizioIntervento') . "','" . getVar('oraInizioIntervento') . "','" . getVar('minutiInizioIntervento') . "','" . getVar('giornoFineIntervento') . "','" . getVar('meseFineIntervento') . "','" . getVar('annoFineIntervento') . "','" . getVar('oraFineIntervento') . "','" . getVar('minutiFineIntervento') . "','" . getVar('codTF') . "','" . getVar('codTT') . "','" . getVar('materialeUtilizzato') . "')";
    if ($tab = $db->query($sql)) {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}

function modifica() {
    global $db;
    $sql = "update tssij_interventi "
            . " set codT = '" . getVar('codT') . "'"
            . " , codC = '" . getVar('codC') . "'"
            . " , codF = '" . getVar('codF') . "'"
            . " , descrizioneIntervento = '" . getVar('descrizioneIntervento') . "'"
            . " , altro = '" . getVar('altro') . "'"
            . " , trasferta = '" . getVar('trasferta') . "'"
            . " , codL = '" . getVar('codL') . "'"
            . " , giornoInizioIntervento = '" . getVar('giornoInizioIntervento') . "'"
            . " , meseInizioIntervento = '" . getVar('meseInizioIntervento') . "'"
            . " ,annoInizioIntervento = '" . getVar('annoInizioIntervento') . "'"
            . " , oraInizioIntervento = '" . getVar('oraInizioIntervento') . "'"
            . " , minutiInizioIntervento = '" . getVar('minutiInizioIntervento') . "'"
            . " , giornoFineIntervento = '" . getVar('giornoFineIntervento') . "'"
            . " , meseFineIntervento = '" . getVar('meseFineIntervento') . "'"
            . " , annoFineIntervento = '" . getVar('annoFineIntervento') . "'"
            . " , oraFineIntervento = '" . getVar('oraFineIntervento') . "'"
            . " , minutiFineIntervento = '" . getVar('minutiFineIntervento') . "'"
            . " , codTF = '" . getVar('codTF') . "'"
            . " , codTT = '" . getVar('codTT') . "'"
            . " , materialeUtilizzato = '" . getVar('materialeUtilizzato') . "'"
            . " where codi=" . getVar('codI') . "";
    if ($tab = $db->query($sql)) {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}

function cancella() {
    global $db;
    $sql = "delete from tssij_interventi"
            . " where codI=" . getVar('codI') . "";
    if ($tab = $db->query($sql)) {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}

function getOptioncodC() {
    global $db;
    $sql = "Select DISTINCT tssij_users.id as \"codC\", username \n"
            . "from tssij_users, tssij_usergroups, tssij_user_usergroup_map \n"
            . "where tssij_users.id=tssij_user_usergroup_map.user_id\n"
            . "and tssij_usergroups.id=tssij_user_usergroup_map.group_id\n"
            . "and title = \"Clienti\"\n"
            . "order by username";
    $elenco = array();
    if (($tab = $db->query($sql))) {
        while ($riga = $tab->fetch_array()) {
            $elenco [] = $riga;
        }
        return $elenco;
    } else {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}

function getOptioncodT() {
    global $db;
    $sql = "Select DISTINCT tssij_users.id as \"codT\", username \n"
            . "from tssij_users, tssij_usergroups, tssij_user_usergroup_map \n"
            . "where tssij_users.id=tssij_user_usergroup_map.user_id\n"
            . "and tssij_usergroups.id=tssij_user_usergroup_map.group_id\n"
            . "and title = \"Tecnici\"\n"
            . "order by username";
    $elenco = array();
    if (($tab = $db->query($sql))) {
        while ($riga = $tab->fetch_array()) {
            $elenco [] = $riga;
        }
        return $elenco;
    } else {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}

function getOptioncodL() {
    global $db;
    $sql = "Select * \n"
            . "from tssij_luoghi \n"
            . "order by luogo";
    $elenco = array();
    if (($tab = $db->query($sql))) {
        while ($riga = $tab->fetch_array()) {
            $elenco [] = $riga;
        }
        return $elenco;
    } else {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}

function getOptioncodF() {
    global $db;
    $sql = "Select * \n"
            . "from tssij_fornitori \n"
            . "order by fornitore";
    $elenco = array();
    if (($tab = $db->query($sql))) {
        while ($riga = $tab->fetch_array()) {
            $elenco [] = $riga;
        }
        return $elenco;
    } else {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}

function getOptioncodTF() {
    global $db;
    $sql = "Select * \n"
            . "from tssij_tipifatturazione \n"
            . "order by tipoFatturazione";
    $elenco = array();
    if (($tab = $db->query($sql))) {
        while ($riga = $tab->fetch_array()) {
            $elenco [] = $riga;
        }
        return $elenco;
    } else {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}

function getOptioncodTT() {
    global $db;
    $sql = "Select * \n"
            . "from tssij_tipitariffe \n"
            . "order by tipoTariffa";
    $elenco = array();
    if (($tab = $db->query($sql))) {
        while ($riga = $tab->fetch_array()) {
            $elenco [] = $riga;
        }
        return $elenco;
    } else {
        die("Errore sql: " . $tab->getMessage() . ":" . $sql);
    }
}
?>

2) il secondo problema più grande che invalida tutto il progetto è l'impossibilità di dare dei valori agli
PHP:
<input>
vari.
Gli errori sono
Undefined index
o anche
Notice: Trying to get property of non-object
A causa di questo errore non riesco a vedere i
PHP:
<input type="text">
Nè vuoti, nè con il valore di una delle variabili, ma riempite di quell'errore.

3) la data, non sono risuscito a capire come fare a trovare un sistema per far apparire un calendarietto per selezionare la data e l'ora e i minuti. Ma questo è il minore dei 3 mali

Chissà se riuscirò mai a fare un sito web che funzioni...
 

Discussioni simili