Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Submit in pagina esterna con jquery

    Salve a tutti,
    premetto che in php non sono ferratissimo, programmando in .net capirete le mie difficolt�.
    Senza dilungarmi troppo in preamboli vorrei sottoporvi un problema nel quale mi sono imbattuto, avendo la necessit� di visualizzare alcuni dati contenuti in una tabella mysql e di caricare il tutto in una pagina php, fino qui nulla di strano, e visualizzare le modifiche alla tabella in tempo reale, o quasi, ho utilizzato jquery il tutto funziona alla grande.
    Per necessit� ho inserito un pulsante per ogni riga della tabella, il mio fine era quello di passare in post una variabile alla pagina legato alla action, ma nulla.. non funziona... immagino per il semplice fatto che la tabella non viene caricata direttamente nella pagina, ma viene inserita e refreshata ogni tot secondi da una funzione jquery... Forse � meglio se vi posto il codice utilizzato.


    Questa � la pagina principale

    codice HTML:
    <!DOCTYPE html>
    <html><
    head>    
    <title>Seleziona il nuovo tag RFID</title>    
    <link rel="stylesheet" type="text/css" href="style.css">    
    <link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css family=source+sans+pro">
    </head>
    <body>
    <div class="divtitoli">
    <h1 class="titolo">Seleziona il tag RFID</h1><br />
    </div>
    <div class="content">
    <div id="show"></div>  
    <script type="text/javascript" src="jquery.js"></script>  
    <script type="text/javascript">    $(document ).ready(function() {      
    setInterval(function(){        
    $('#show').load('datanewrfid.php');      
    }, 3000);    });      
    </script></div><footer class="footer">    
    </footer></body></html>

    Questa invece � la pagina che viene richiamata dalla funzione .load

    Codice PHP:
    <?php$conn = new mysqli('localhost''root''''dbrfid');
    if(
    $conn->connect_error){  
    die(
    "Errore di connessione: " $conn->connect_error);}
    $result $conn->query("SELECT * FROM nuovi_tag");if($result->num_rows 0){    
    ?>
    <table class="tabellarfid">    
    <tr><th>Id Tag</th><th>RFID Code</th></tr>     
    <?php  while ($row $result->fetch_assoc()) {    
    echo 
    '<tr>';    echo '<td>' $row['id'] . '</td>';    
    echo 
    '<td class="tdrfid">' $row['rfidnew'] . '</td>';    ?> 
    <form name="bottone" action="carica_garanzia.php" method="post">       
    <input name="rfidvar" type="hidden" value="<?php $row['rfidnew']?>">    
    <?php     echo '<td><input type="submit" name="'.$row['rfidnew'].'" class="btngeneral assegna" value="Assegna" /></td>';    ?>
    </form><?php    echo '</tr>';  }}else
    echo 
    "<h3>Nessun TAG Nuovo da visualizzare<br />Riprova a Scansionare</h3>"
    ?> 
    </table>
    Se avete suggerimenti sono qui..
    Grazie

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Ciao, così ad occhio e credo se funziona quanto fatto, dovresti avere l'html in pagina di quella tabella aggiornato ogni 3 sencondi.
    Avendo una form per ogni riga, dovrebbe ricaricarti la pagina stessa sulla action del form.

    Come vorresti che funzionasse di preciso?

  3. #3
    Ciao m4rko80, grazie per la tua risposta,
    il funzionamento "dovrebbe" essere questo:
    Ho un database con una tabella, con all'interno dei dati, i dati nella tabella vengono inseriti o cancellati da un programma esterno, tutti i dati di questa tabella vanno trascritti sulla pagina php.
    Essendo dati che cambiano di continuo ho bisogno che questa query venga richiamata di tanto in tanto, ad ogni riga devo associare un pulsante, alla pressione di quel pulsante, dovrebbe aprirsi una pagina con un form dove poter inserire dei dati, ovviamente il pulsante passa una variabile alla nuova pagina in POST, legato ad uno dei campi della riga della tabella.

  4. #4
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Qual'è il problema che riscontri ? Ad occhio l'unico errore è questo:
    Codice PHP:
    <input name="rfidvar" type="hidden" value="<?php $row['rfidnew']?>">
    manca l'echo. Così hai un value nullo

  5. #5
    La prima cosa che non va, è che i tasti non fanno nulla.. non aprono nessuna pagina, posso capire lo sbaglio del passaggio di variabile, ma il problema è che i tasti non fanno nulla... Come se per Php non esistessero...

    Quote Originariamente inviata da boots Visualizza il messaggio
    Qual'è il problema che riscontri ? Ad occhio l'unico errore è questo:
    Codice PHP:
    <input name="rfidvar" type="hidden" value="<?php $row['rfidnew']?>">
    manca l'echo. Così hai un value nullo

  6. #6
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    ID a parte premesso fosse tutto corretto, non funziona perchè questo html è inserito dopo nel DOM e non riconosciuto.
    Lato javascript quindi, nella pagina principale puoi aggiungere questo:

    codice:
    $('#show').on('click','[type="submit"]',function(){
    		$(this).parent('form').submit();
    	});
    In questo modo dovrebbe submittare la form.
    Testato in locale e funzionante.
    Ovviamente viene inviata la form e cambierà la pagina.
    Se vuoi inviare la form senza ricaricare dovrai aggiungere la chiamata in ajax anche per questo.

  7. #7
    Grazie come sempre per tutte le risposte, in che punto del codice dovrei inserirlo, ho provato ad implementarlo ma continua a non funzionare.... Quindi non capisco se ho implementato male il codice o bohh..
    Grazie!!

  8. #8
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Puoi metterlo nello stesso script dove hai messo setInterval()

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.