简体   繁体   中英

RadioButton Value doesn't insert into mySql DB whit Php

During a simple insertion query via PHP and MySQL, I find the following problem: it does not insert all the values ​​of the radioButton .. actually actually only inserts one :( I can not understand why !! I think there is a problem with the $ _POST because by printing it I only get the value of the first radioButton jumping all the others ...

I am attaching screenshots to explain you better

enter image description here

 <?php $servername = "localhost"; $username = "progettocantiere"; $password = ""; $dbname = "my_progettocantiere"; $connessione = mysql_connect("$servername","$username","$password"); if(!$connessione) { die("Errore critico di Connessione al Database" . mysql_error()); } //connessione mysql_select_db("$dbname",$connessione); $fkIDCantiere = $_GET["idCantiere"]; $idAffidataria = $_POST["idAffidataria"]; $nomeCantiere =$_POST["nomeCantiere"]; $addettoSicurezza=$_POST["addettoSicurezza"]; $mailAffidataria = $_POST["mailAffidataria"]; $scadenzaCCIAA = $_POST["scadenzaCCIAA"]; $scadenzaDURC = $_POST["scadenzaDURC"]; $contrattoDiAppalto = $_POST["contrattoDiAppalto"]; $pianoDiEmergenzaEAggiornamenti = $_POST["pianoDiEmergenzaEAggiornamenti"]; $CCIAA = $_POST["CCIAA"]; $DURC= $_POST["DURC"]; $DVR= $_POST["DVR"]; $dichiarazioneITP =$_POST["DichiarazioneITP"]; $posRevA = $_POST["posRevA"]; $posRevB = $_POST["posRevB"]; $posRevC = $_POST["posRevC"]; $posInt01 =$_POST["posInt01"]; $registroInfortuni = $_POST["registroInfortuni"]; $nominaRSPP = $_POST["nominaRSPP"]; $attestatoFormazioneRspp = $_POST["attestatoFormazioneRspp"]; $verbaleElezioneRLS = $_POST["verbaleElezioneRLS"]; $attestatoFormazioneRLS = $_POST["attestatoFormazioneRLS"]; $delegaDC = $_POST["DelegaDC"]; $formazioneDirigente = $_POST["formazioneDirigente"]; $nominaPreposto = $_POST["nominaPreposto"]; $formazionePreposto = $_POST["formazionePreposto"]; $nominaAddettoAntincendio =$_POST["nominaAddettoAntincendio"]; $formazioneAddettoAntincendio = $_POST["formazioneAddettoAntincendio"]; $nominaAddettoPS = $_POST["nominaAddettoPS"]; $formazioneAddettoPS = $_POST["formazioneAddettoPS"]; $schedeSicurezzaSostanzeChimiche = $_POST["schedeSicurezzaSostanzeChimiche"]; $nominaMedicoCompetente = $_POST["nominaMedicoCompetente"]; $impiantoElettricoComunicazioneInail = $_POST["impiantoElettricoComunicazioneInail"]; $derogaAlRumore = $_POST["derogaAlRumore"]; $note1 = $_POST["note1"]; $note2= $_POST["note2"]; $note3= $_POST["note3"]; $note4= $_POST["note4"]; $note5= $_POST["note5"]; $note6= $_POST["note6"]; $note7= $_POST["note7"]; $note8= $_POST["note8"]; $note9= $_POST["note9"]; $note10= $_POST["note10"]; $note11= $_POST["note11"]; $note12= $_POST["note12"]; $note13= $_POST["note13"]; $note14= $_POST["note14"]; $note15= $_POST["note15"]; $note16= $_POST["note16"]; $note17= $_POST["note17"]; $note18= $_POST["note18"]; $note19= $_POST["note19"]; $note20= $_POST["note20"]; $note21= $_POST["note21"]; $note22= $_POST["note22"]; $note23= $_POST["note23"]; $note24= $_POST["note24"]; $note25= $_POST["note25"]; $note26= $_POST["note26"]; $note27= $_POST["note27"]; $note28= $_POST["note28"]; $note29= $_POST["note29"]; $note30= $_POST["note30"]; $note31= $_POST["note31"]; print_r($_POST); $ris_news = mysql_query("INSERT INTO Affidataria (idAffidataria, nomeCantiere, addettoSicurezza, mailAffidataria, scadenzaCCIAA, scadenzaDURC, fkIDCantiere, contrattoDiAppalto, pianoDiEmergenzaEAggiornamenti, CCIAA, DURC, DVR, DichiarazioneITP, posRevA, posRevB, posRevC, posInt01, registroInfortuni, nominaRSPP, attestatoFormazioneRspp, verbaleElezioneRLS, attestatoFormazioneRLS, DelegaDC, formazioneDirigente, nominaPreposto, formazionePreposto, nominaAddettoAntincendio, formazioneAddettoAntincendio, nominaAddettoPS, formazioneAddettoPS, schedeSicurezzaSostanzeChimiche, nominaMedicoCompetente, impiantoElettricoComunicazioneInail, derogaAlRumore, note1, note2, note3, note4, note5, note6, note7, note8, note9, note10, note11, note12, note13, note14, note15, note16, note17, note18, note19, note20, note21, note22, note23, note24, note25, note26, note27, note28, note29, note30, note31) VALUES ('$idAffidataria', '$nomeCantiere', '$addettoSicurezza', '$mailAffidataria', '$scadenzaCCIAA', '$scadenzaDURC', '$fkIDCantiere', '$contrattoDiAppalto', '$pianoDiEmergenzaEAggiornamenti', '$CCIAA', '$DURC', '$DVR', '$dichiarazioneITP', '$posRevA', '$posRevB', '$posRevC', '$posInt01', '$registroInfortuni', '$nominaRSPP', '$attestatoFormazioneRspp', '$verbaleElezioneRLS', '$attestatoFormazioneRLS', '$delegaDC', '$formazioneDirigente', '$nominaPreposto', '$formazionePreposto', '$nominaAddettoAntincendio', '$formazioneAddettoAntincendio', '$nominaAddettoPS', '$formazioneAddettoPS', '$schedeSicurezzaSostanzeChimiche', '$nominaMedicoCompetente', '$impiantoElettricoComunicazioneInail', '$derogaAlRumore', '$note1', '$note2', '$note3', '$note4', '$note5', '$note6', '$note7', '$note8', '$note9', '$note10', '$note11', '$note12', '$note13', '$note14', '$note15', '$note16', '$note17', '$note18', '$note19', '$note20', '$note21', '$note22', '$note23', '$note24', '$note25', '$note26', '$note27', '$note28', '$note29', '$note30', '$note31')"); if (!$ris_news) { //messaggio di errore per capire il problema exit ('<p> Errore mentre recuperavo i dati ' . mysql_error() . ' </p>'); } /*try { $toInsert1 ="INSERT INTO Affidataria (idAffidataria,nomeAffidataria,addettoSicurezza,mailAffidataria,scadenzaCCIAA,scadenzaDURC) VALUES ('$nomeAffidataria','$addettoSicurezza','$mailAffidataria','$scadenzaCCIAA','$scadenzaDURC')"; $result1 = mysql_query($toInsert1); } catch(Exception $var) { print $var->getMessage(); } */ ?> <html> <body> <script language="javascript"> function controlla(){ x=document.prova; if (x.scelta.value=="si"){ window.location.href = '../subAffidatario.php?idAffidataria=<?php echo $idAffidataria?>' return false; } if (x.scelta.value=="no"){ alert("Hai risposto no"); window.location.href = '../affidatario.php' return false; } } </script> <fieldset> <strong>Sei sicuro di voler continuare?</strong> <form action="?" method="POST" name="prova" onsubmit="return controlla();"> SI<input type="radio" name="scelta" value="si" /><br /> NO<input type="radio" name="scelta" value="no" /><br /> <button type="submit">INVIA</button> </form> </fieldset> </body> </html>

this is the result that returns the query by inserting "print_r ($ _ POST);"

enter image description here

practically reads the first radioButton "$contrattoDiAppalto" and sends me an error on the next radioButton called (as seen by the error) "PianoDiEmergenzaEAggiornamenti"

I also show you the html code I used for radio buttons

 <html> <body> <table> <tr> <td bgcolor="#B35556"><form method="POST"> OK <input type="radio" name="contrattoDiAppalto" id="contrattoDiAppalto" value="1" onchange="color(this)" /> <BR> NO <input type="radio" name="contrattoDiAppalto" id="contrattoDiAppalto" value="0" onchange="color(this)" checked/> </form></td></tr> <tr> <td bgcolor="#B35556"> <form method="POST"> OK <input type="radio" name="pianoDiEmergenzaEAggiornamenti" id="pianoDiEmergenzaEAggiornamenti" value="1" onchange="color(this)" /> <BR> NO <input type="radio" name="pianoDiEmergenzaEAggiornamenti" id="pianoDiEmergenzaEAggiornamenti" value="0" onchange="color(this)" checked/> </form> </td></tr> </table> </body> </html>

Moral of all this: HOW DID YOU READ ONLY THE FIRST RADIOBUTTON AVOIDING ALL OTHERS?

In your html code you use several tags. This results in submitting one of the forms will not send the contend of the other forms. So you just have to remove the form closing and opening again to make it work.

 <html> <body> <table> <tr> <td bgcolor="#B35556"><form method="POST"> OK <input type="radio" name="contrattoDiAppalto" id="contrattoDiAppalto" value="1" onchange="color(this)" /> <BR> NO <input type="radio" name="contrattoDiAppalto" id="contrattoDiAppalto" value="0" onchange="color(this)" checked/> </td></tr> <tr> <td bgcolor="#B35556"> OK <input type="radio" name="pianoDiEmergenzaEAggiornamenti" id="pianoDiEmergenzaEAggiornamenti" value="1" onchange="color(this)" /> <BR> NO <input type="radio" name="pianoDiEmergenzaEAggiornamenti" id="pianoDiEmergenzaEAggiornamenti" value="0" onchange="color(this)" checked/> </form> </td></tr> </table> </body> </html>

But please dive deeper into html and js, as there are other "errors" too. So for example you use the same id on two html elements wich is not correct. "document.getElementById()" only will return a random one (usually the first), but that is not as it is supposed to be. I would suggest to remove the id's as long as you do not use them in your java script code.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM