Come passare una variabile al modal di bootstrap

francesco_mendola

Nuovo Utente
2 Mar 2020
1
0
1
Salve, ho un problema con il codice che c'è sotto, non riesco a passare la variabile id dal form del td al modal con i dettagli del td della tabella.
L'errore che ottengo è: Notice: Undefined index: id in E:\xampp\htdocs\dcg\pages\tickets-assistenza.php on line 38
Come risolvo? Grazie in anticipo.

Il codice è in un'unico file php:
PHP:
<?php
    session_start();
    
    if (!(isset($_SESSION['autorizzato']) && $_SESSION['autorizzato'] == true)) {
        header("Location: login.php");
    }

    $nomepagina = 'sezioni';

    $conn = mysqli_connect('localhost', 'root', '', 'gestione');
    if (!$conn) {
        die("Connessione non riuscita: ".mysqli_connect_error());
    }
    
    function prendiTickets($conn){
        $sql = "SELECT * FROM tickets";
        $result = $conn->query($sql);
        while($row = $result->fetch_assoc()){
            echo "<form method='POST' action='".strumentiRisposta($conn)."'>";
                echo "<tr class='odd gradeX'>";
                    echo "<td>".$row['id']."</td>";
                    echo "<td>".$row['cognomenome']."</td>";
                    echo "<td>".$row['oggetto']."</td>";
                    echo "<input type='hidden' name='id' value='".$row['id']."'>";
                    echo "
                        <td class='text-right'>
                            <button type='submit' name='dettagli_strumenti' class='btn btn-primary btn-xs' data-toggle='modal' data-target='#modaldettagli'><i class='fa fa-cogs'></i>
                                &nbsp;&nbsp;Dettagli e strumenti
                            </button>
                        </td>
                    ";
                echo "</tr>";
            echo "</form>";
           }
    }
    
    function strumentiRisposta($conn){
            $id = $_POST['id'];
            echo "
                <div class='modal fade' id='modaldettagli' tabindex='-1' role='dialog' aria-labelledby='myModalLabel' aria-hidden='true'>
                    <div class='modal-dialog' role='document'>
                        <div class='modal-content'>
                            <div class='modal-header'>
                                <button type='button' class='close' data-dismiss='modal' aria-hidden='true'>&times;</button>
                                <h4 class='modal-title' id='myModalLabel'>Dettagli e strumenti per ticket n. ".$id."</h4>
                            </div>
                            <form id='risposta'>
                                <div class='modal-body'>
                                    <p>
                                        <b>Mittente: </b>Cognome Nome ([email protected])<br>
                                        <b>Invio: </b>00/00/0000 00:00<br>
                                        <b>Oggetto: </b>Oggetto<br>
                                    </p>
                                    <div class='form-group'>
                                        <label>Messaggio</label>
                                        <textarea class='form-control' rows='3' style='resize: none;' disabled>Messaggio completo</textarea>
                                    </div>
                                    <br>
                                    <div class='form-group'>
                                        <label>Risposta</label>
                                        <textarea class='form-control' rows='3' required style='resize: none;' placeholder='Inserisci il messaggio di risposta'></textarea>
                                    </div>
                                </div>
                            </form>
                            <div class='modal-footer'>
                                <button type='button' class='btn btn-default btn-sm' data-dismiss='modal'>Chiudi</button>
                                <button type='submit' name='submit' form='risposta' class='btn btn-success btn-sm'>Invia risposta</button>
                                <button type='submit' name='' class='btn btn-danger btn-sm'>Elimina</button>
                            </div>
                        </div>
                    </div>
                </div>
            ";
    }

    /*function eliminaProfilo($conn){
        if(isset($_POST['eliminaProfiloBTN'])){
            $_POST['id'] = $id;
            $sql = "DELETE FROM profili WHERE id='$id'";
            $result = $conn->query($sql);
            //echo "<meta http-equiv='refresh' content='0'>";
        }
    }*/
?>

<!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">
        <meta name="description" content="">
        <meta name="author" content="">
        <title>Tickets assistenza - CGAD</title>
        <link href="../css/bootstrap.min.css" rel="stylesheet">
        <link href="../css/metisMenu.min.css" rel="stylesheet">
        <link href="../css/startmin.css" rel="stylesheet">
        <link href="../css/font-awesome.min.css" rel="stylesheet" type="text/css">
        <link href="../css/dataTables/dataTables.bootstrap.css" rel="stylesheet">
        <link href="../css/dataTables/dataTables.responsive.css" rel="stylesheet">
        <link rel="shortcut icon" href="../img/favicon.png">
    </head>
    <body>
        <?php include('../php/navbar.php'); ?>
        <div id="wrapper">
            <!--div class="modal fade" id="modaldettagli" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
                <div class="modal-dialog" role="document">
                    <div class="modal-content">
                        <div class="modal-header">
                            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                            <h4 class="modal-title" id="myModalLabel">Dettagli e strumenti per ticket n. 0</h4>
                        </div>
                        <form id="risposta">
                            <div class="modal-body">
                                <div class="form-group">
                                    <label>Text area</label>
                                    <textarea class="form-control" rows="3" required></textarea>
                                </div>
                            </div>
                        </form>
                        <div class="modal-footer">
                            <button type="button" class="btn btn-default btn-sm" data-dismiss="modal">Chiudi</button>
                            <button type="submit" name="submit" form="risposta" class="btn btn-success btn-sm">Rispondi</button>
                            <button type="submit" name="" class="btn btn-danger btn-sm">Elimina</button>
                        </div>
                    </div>
                </div>
            </div-->
            <div id="page-wrapper">
                <div class="container-fluid">
                    <div class="row">
                        <div class="col-lg-12">
                            <h1 class="page-header">Tickets assistenza</h1>
                        </div>
                    </div>
                    <div class="row">
                        <div class="col-lg-12">
                            <div class="panel panel-default">
                                <div class="panel-heading">Tickets aperti</div>
                                <div class="panel-body">
                                    <div class="table-responsive">
                                        <table class="table table-striped table-bordered table-hover" id="dataTables-example">
                                            <thead>
                                                <tr>
                                                    <th>#</th>
                                                    <th>Cognome e nome</th>
                                                    <th>Oggetto</th>
                                                    <th>Azioni</th>
                                                </tr>
                                            </thead>
                                            <tbody>
                                                <?php prendiTickets($conn); ?>
                                            </tbody>
                                        </table>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <script src="../js/jquery.min.js"></script>
        <script src="../js/bootstrap.min.js"></script>
        <script src="../js/metisMenu.min.js"></script>
        <script src="../js/startmin.js"></script>
        <script src="../js/dataTables/jquery.dataTables.min.js"></script>
        <script src="../js/dataTables/dataTables.bootstrap.min.js"></script>
        <script>
            $(document).ready(function() {
                $('#dataTables-example').DataTable({
                        responsive: true
                });
            });
        </script>
    </body>
</html>
 

max1974

Utente Attivo
7 Mar 2013
107
0
16
Salve, ho un problema con il codice che c'è sotto, non riesco a passare la variabile id dal form del td al modal con i dettagli del td della tabella.
L'errore che ottengo è: Notice: Undefined index: id in E:\xampp\htdocs\dcg\pages\tickets-assistenza.php on line 38
Come risolvo? Grazie in anticipo.

Il codice è in un'unico file php:
PHP:
<?php
    session_start();
   
    if (!(isset($_SESSION['autorizzato']) && $_SESSION['autorizzato'] == true)) {
        header("Location: login.php");
    }

    $nomepagina = 'sezioni';

    $conn = mysqli_connect('localhost', 'root', '', 'gestione');
    if (!$conn) {
        die("Connessione non riuscita: ".mysqli_connect_error());
    }
   
    function prendiTickets($conn){
        $sql = "SELECT * FROM tickets";
        $result = $conn->query($sql);
        while($row = $result->fetch_assoc()){
            echo "<form method='POST' action='".strumentiRisposta($conn)."'>";
                echo "<tr class='odd gradeX'>";
                    echo "<td>".$row['id']."</td>";
                    echo "<td>".$row['cognomenome']."</td>";
                    echo "<td>".$row['oggetto']."</td>";
                    echo "<input type='hidden' name='id' value='".$row['id']."'>";
                    echo "
                        <td class='text-right'>
                            <button type='submit' name='dettagli_strumenti' class='btn btn-primary btn-xs' data-toggle='modal' data-target='#modaldettagli'><i class='fa fa-cogs'></i>
                                &nbsp;&nbsp;Dettagli e strumenti
                            </button>
                        </td>
                    ";
                echo "</tr>";
            echo "</form>";
           }
    }
   
    function strumentiRisposta($conn){
            $id = $_POST['id'];
            echo "
                <div class='modal fade' id='modaldettagli' tabindex='-1' role='dialog' aria-labelledby='myModalLabel' aria-hidden='true'>
                    <div class='modal-dialog' role='document'>
                        <div class='modal-content'>
                            <div class='modal-header'>
                                <button type='button' class='close' data-dismiss='modal' aria-hidden='true'>&times;</button>
                                <h4 class='modal-title' id='myModalLabel'>Dettagli e strumenti per ticket n. ".$id."</h4>
                            </div>
                            <form id='risposta'>
                                <div class='modal-body'>
                                    <p>
                                        <b>Mittente: </b>Cognome Nome ([email protected])<br>
                                        <b>Invio: </b>00/00/0000 00:00<br>
                                        <b>Oggetto: </b>Oggetto<br>
                                    </p>
                                    <div class='form-group'>
                                        <label>Messaggio</label>
                                        <textarea class='form-control' rows='3' style='resize: none;' disabled>Messaggio completo</textarea>
                                    </div>
                                    <br>
                                    <div class='form-group'>
                                        <label>Risposta</label>
                                        <textarea class='form-control' rows='3' required style='resize: none;' placeholder='Inserisci il messaggio di risposta'></textarea>
                                    </div>
                                </div>
                            </form>
                            <div class='modal-footer'>
                                <button type='button' class='btn btn-default btn-sm' data-dismiss='modal'>Chiudi</button>
                                <button type='submit' name='submit' form='risposta' class='btn btn-success btn-sm'>Invia risposta</button>
                                <button type='submit' name='' class='btn btn-danger btn-sm'>Elimina</button>
                            </div>
                        </div>
                    </div>
                </div>
            ";
    }

    /*function eliminaProfilo($conn){
        if(isset($_POST['eliminaProfiloBTN'])){
            $_POST['id'] = $id;
            $sql = "DELETE FROM profili WHERE id='$id'";
            $result = $conn->query($sql);
            //echo "<meta http-equiv='refresh' content='0'>";
        }
    }*/
?>

<!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">
        <meta name="description" content="">
        <meta name="author" content="">
        <title>Tickets assistenza - CGAD</title>
        <link href="../css/bootstrap.min.css" rel="stylesheet">
        <link href="../css/metisMenu.min.css" rel="stylesheet">
        <link href="../css/startmin.css" rel="stylesheet">
        <link href="../css/font-awesome.min.css" rel="stylesheet" type="text/css">
        <link href="../css/dataTables/dataTables.bootstrap.css" rel="stylesheet">
        <link href="../css/dataTables/dataTables.responsive.css" rel="stylesheet">
        <link rel="shortcut icon" href="../img/favicon.png">
    </head>
    <body>
        <?php include('../php/navbar.php'); ?>
        <div id="wrapper">
            <!--div class="modal fade" id="modaldettagli" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
                <div class="modal-dialog" role="document">
                    <div class="modal-content">
                        <div class="modal-header">
                            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                            <h4 class="modal-title" id="myModalLabel">Dettagli e strumenti per ticket n. 0</h4>
                        </div>
                        <form id="risposta">
                            <div class="modal-body">
                                <div class="form-group">
                                    <label>Text area</label>
                                    <textarea class="form-control" rows="3" required></textarea>
                                </div>
                            </div>
                        </form>
                        <div class="modal-footer">
                            <button type="button" class="btn btn-default btn-sm" data-dismiss="modal">Chiudi</button>
                            <button type="submit" name="submit" form="risposta" class="btn btn-success btn-sm">Rispondi</button>
                            <button type="submit" name="" class="btn btn-danger btn-sm">Elimina</button>
                        </div>
                    </div>
                </div>
            </div-->
            <div id="page-wrapper">
                <div class="container-fluid">
                    <div class="row">
                        <div class="col-lg-12">
                            <h1 class="page-header">Tickets assistenza</h1>
                        </div>
                    </div>
                    <div class="row">
                        <div class="col-lg-12">
                            <div class="panel panel-default">
                                <div class="panel-heading">Tickets aperti</div>
                                <div class="panel-body">
                                    <div class="table-responsive">
                                        <table class="table table-striped table-bordered table-hover" id="dataTables-example">
                                            <thead>
                                                <tr>
                                                    <th>#</th>
                                                    <th>Cognome e nome</th>
                                                    <th>Oggetto</th>
                                                    <th>Azioni</th>
                                                </tr>
                                            </thead>
                                            <tbody>
                                                <?php prendiTickets($conn); ?>
                                            </tbody>
                                        </table>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <script src="../js/jquery.min.js"></script>
        <script src="../js/bootstrap.min.js"></script>
        <script src="../js/metisMenu.min.js"></script>
        <script src="../js/startmin.js"></script>
        <script src="../js/dataTables/jquery.dataTables.min.js"></script>
        <script src="../js/dataTables/dataTables.bootstrap.min.js"></script>
        <script>
            $(document).ready(function() {
                $('#dataTables-example').DataTable({
                        responsive: true
                });
            });
        </script>
    </body>
</html>
Non so se ho capito bene cosa stai cercando.....
dalla tabella passare il valore id alla modal form ???
PHP:
$('#dataTables-example tbody').on('click', 'tr', function () {
                var table = $('#dataTables-example').DataTable();
                var data = table.row(this).data();
                alert('Mio id = '+data.id);
              });
 
Discussioni simili
Autore Titolo Forum Risposte Data
F Passare una variabile php dal DB mysql alla pagina PHP 3
AMONRA75 [PHP] passare una variabile in una finestra MODAL PHP 1
T [PHP] passare una variabile in una finestra MODAL di bootstrap PHP 3
W Passare una variabile da una pagina all'altra PHP 25
G Passare valore ad una variabile con jQuery e PHP PHP 1
R passare una variabile in query per ORDER BY PHP 6
B AIUTO: come passare una variabile php ad una funzione javascript Javascript 2
7 Come passare una variabile internamente tra due funzioni... Javascript 3
V passare la scelta di una select ad un variabile php PHP 5
U passare una variabile di sessione da pagina di joomla a pagina php Joomla 3
P Passare una variabile a una query sql Database 0
P Passare solo una variabile di un form a pagina principale Javascript 1
B passare una variabile javascript ad una jsp Javascript 0
G passare una variabile da una prompt js a php Javascript 1
G Passare una variabile ad un applet PHP 1
E Conviene passare in sessione una variabile db ? Classic ASP 5
Fendo59 Passare parametri con metodo POST a una pagina in un frame PHP 0
M Passare una varibile da PHP a Javascript PHP 2
M [MS Access] Passare i dati di una query da form a report MS Access 3
M Passare una funzione a una proprietà di oggetto Javascript 2
M Passare coppie di coordinate in una google map Javascript 0
I Passare da una pagina all'altra di un sito web Javascript 5
P Passare un valore, o arriare una funzione da pagina2.php in pagina1.php Javascript 2
F Passare dati raccolti ad una pagina jQuery 1
G assegnare un valore da passare in post, da una lista jQuery 6
G Passare un argomento da una funzione all'altra con AJAX Ajax 7
M Passare il valore di una checkbox ad asp Classic ASP 1
C php, passare i valori di una lista PHP 4
M Passare il valore di una checkbox ad input text Javascript 0
M [php] passare valore di una select ] PHP 0
L far funzionare il "play"sotto le immagini per passare da una all'altra Flash 2
R passare valori da una form per un'anteprima Javascript 0
T passare una array ad una funzione PHP 2
B passare il risultato di una query da una pagina ad un'altra Javascript 4
S Passare parametri da una maschera all'altra MS Access 0
V Passare da una pagina all altra tramite bottoni Flash 47
E passare un id ad una function js Classic ASP 5
S passare un valore da un form a un file .php con metodo post PHP 4
R valore value di un id da passare in chiamata ajax Ajax 3
N Passare array da php a javascript PHP 5
S Passare query o utm alla pagina successiva Domini 1
P Passare solo alcuni parametri a script per CSV PHP 0
D passare valori da database sql a php PHP 1
P Passare contenuto in value. Ajax 1
P Passare i risultati di un foreach in un modal. Help! PHP 2
F Passare variabile a pulsante in finestra modale PHP 2
P jButton1ActionPerformed passare parametri ad altra classe Java 2
A Problema nel passare la variabile PHP 0
I Passare dei parametri in javascript PHP 0
N PDF fpdi passare variabile PHP 4

Discussioni simili