Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    Checkbox e valori array da inserire in un db mysql

    Salve a tutti, sono qui a porvi l'ennesimo quesito :P, veniamo al dunque.
    Praticamente ho una tabella in cui sono presenti valori di un array con di fianco un checkbox.
    Avrei bisogno che alla selezione i valori selezionati, ovvero {$row['quantita']} {$row['prodotto']} {$row['terminale']} vengano inseriti in un altra tabella mysql... ma ciò che ottengo è sempre 0++
    codice:
    $i = 0;
    $checkboxes = "<input type='checkbox' name='selected[]' value='$i++'/><br />";
    
    
    echo "<form action='inserisci.php' method='post'>";
    echo "<table align='left' border='1' width='60%'>";
    echo "<tr><th></th><th>Qnt</th><th>Prodotto</th><th>Term</th></tr>";
    
    
        foreach ($pdo->query("SELECT * FROM tabella") as $row) {
    
    
        echo "<tr><td>$checkboxes</td><td>{$row['quantita']}</td><td>{$row['prodotto']}</td><td>{$row['terminale']}</td></tr>";
    }
    
    
    echo "</table><br />";
    <p><input type="submit" value="Modify" tabindex="3"/>
    </form></p>
    Fin qui tutto in ordine tranne che per value='$i++' il quale mi restituisce sempre 0++... mentre dovrebbe restituirmi i 3 valori dell'array in modo da poterli inserire in un'altra tabella
    inserisci.php
    codice:
    $selezionati = isset($_POST['selected']) ? $_POST['selected'] : array();
    foreach($selezionati as $selezione) {
      echo $selezione . '<br/>';
    }

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,360
    Non è possibile fare un calcolo in una stringa. $i++ ne è uno.
    Se scrivi print "10+10"; ti stamperà 10+10 ma non 20.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    $checkboxes = "<input type='checkbox' name='selected[]' value='$i++'/><br />";

    Questa è una stringa, $i viene valutata solo in questa istruzione e vale 0, quindi dentro alla variabile $checkboxes hai giustamente
    <input type='checkbox' name='selected[]' value='0++'/><br />
    e viene inserito così ad ogni iterazione del foreach.

    Non puoi assegnare la stringa ad una variabile ed usarla dentro il foreach, devi scriverla per esteso dentro il ciclo al posto di $checkboxes con $i invece di $i++, così verrà $i verrà valutata ad ogni iterazione e mettere $i++ come istruzione finale del ciclo.

  4. #4
    Quote Originariamente inviata da badaze Visualizza il messaggio
    Non è possibile fare un calcolo in una stringa. $i++ ne è uno.
    Se scrivi print "10+10"; ti stamperà 10+10 ma non 20.

    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    $checkboxes = "<input type='checkbox' name='selected[]' value='$i++'/><br />";

    Questa è una stringa, $i viene valutata solo in questa istruzione e vale 0, quindi dentro alla variabile $checkboxes hai giustamente
    <input type='checkbox' name='selected[]' value='0++'/><br />
    e viene inserito così ad ogni iterazione del foreach.

    Non puoi assegnare la stringa ad una variabile ed usarla dentro il foreach, devi scriverla per esteso dentro il ciclo al posto di $checkboxes con $i invece di $i++, così verrà $i verrà valutata ad ogni iterazione e mettere $i++ come istruzione finale del ciclo.
    Grazie delle risposte.... avevo immaginato... ma il problema resta lo stesso...quando spunto 1 o più checkbox come faccio ad inserire i valori spuntati in un altra tabella?

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Quale altra tabella? HTML o Database?
    Spiega bene cosa devi fare perché non si capisce.

  6. #6
    Quote Originariamente inviata da Alhazred Visualizza il messaggio
    Quale altra tabella? HTML o Database?
    Spiega bene cosa devi fare perché non si capisce.
    Scusami, hai ragione non mi sono spiegato bene!
    io ho questa tabella

    Dovrei far in modo che i valori inseriti nella tabella a video (ovvero $row['quantita']}</td><td>{$row['prodotto']}</td><td>{$row['terminale']} ) dopo aver spuntato 1 o + checkbox, possano essere uniti a delle informazioni che inserirò a lato e tutti i valori vengano inseriti in un'altra tabella mysql. Il mio prima problema è passare le suddette variabili, che siano state selezionate dalle checkbox, attraverso inserisci.php.
    il secondo problema è unirle ai form di informazioni aggiuntive
    Ultima modifica di supersqualo; 18-09-2017 a 21:22

  7. #7
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,360
    Ma vuoi salvare la descrizione del prodotto ? Non sai che esistono codici articoli ?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  8. #8
    Quote Originariamente inviata da badaze Visualizza il messaggio
    Ma vuoi salvare la descrizione del prodotto ? Non sai che esistono codici articoli ?
    In che senso? Voglio aggiungere un nome un cognome ed un numero di telefono al prodotto (insieme a quantità e terminale)... ovviamente per adesso (come si vede nella foto) ho bisogno di far funzionare il tasto modify (che lancerà una query che inseirà i dati spuntati con le checkbox in un db..) e non addcontact che non ho ancora integrato
    Ultima modifica di supersqualo; 18-09-2017 a 22:24

  9. #9
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,360
    Se vai su qualsiasi sito internet che vende merce, vedrai la descrizione degli articoli. Ma di sicuro nella tabella che contiene l'ordine ci sarà il codice dell'articolo mica la sua descrizione. Questo imho vale anche per quello che ho capito di quelche vuoi fare.
    La descrizione sta nella tabella articoli.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  10. #10
    Quote Originariamente inviata da badaze Visualizza il messaggio
    Se vai su qualsiasi sito internet che vende merce, vedrai la descrizione degli articoli. Ma di sicuro nella tabella che contiene l'ordine ci sarà il codice dell'articolo mica la sua descrizione. Questo imho vale anche per quello che ho capito di quelche vuoi fare.
    La descrizione sta nella tabella articoli.
    Ma a me nn serve il codice... non devo mica vendere articoli online..questo progetto è un utilità interna che ci permetterà di risolvere un problema nella gestione dei prenotati... tutto qua
    Ultima modifica di supersqualo; 19-09-2017 a 00:03

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 © 2024 vBulletin Solutions, Inc. All rights reserved.