Hi, Im trying to make an online form. Im using dropdown boxes, I hide/show some elements. If I choose a option, then I click on submit, it echo-es another element`s option which arent active, and are useless in that situation. Does sombebody have any good idea, how to dont echo not selected values? Thank you all P.S.:sry for my english <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> <script type="text/javascript"> function showtext(c) { if(c=="leskly") { document.getElementById("lesk").style.display="block"; } else { document.getElementById("lesk").style.display="none"; } if(c=="matny") { document.getElementById("mat").style.display="block"; } else { document.getElementById("mat").style.display="none"; } if(c=="iny") { document.getElementById("iny").style.display="block"; } else { document.getElementById("iny").style.display="none"; } } function rozmertext(a) { if(a=="iny") { //document.getElementById("rozm_text").style.display="block"; } else { document.getElementById("rozm_text").style.display="none"; } } function showlamin(b) { if(b=="l_mat") { document.getElementById("lamin").style.display="block"; } else { document.getElementById("lamin").style.display="none"; } } function clearFields() { document.getElementByName("rozm_textx").value = ""; } function clearFields1(f) { if(f=="iny"){ //document.getElementByName("rozm_textx").value = "no"; // document.getElementById("rozm_text").style.display="block"; document.getElementById("rozm_text").style.display="block"; //document.write("Hello World!"); //var name_element = document.getElementById('rozm_text'); //document.write(name_element); }} </script> </head> <body> <form action="proces.php" method="post"> <label>Rozmery:</label><select name="rozmery" id="rozmery" onChange="rozmertext(this.value)" onClick="clearFields1(this.value)"> <option>A3:29,7 x 42cm</option> <option>A4:21 x 29,7cm</option> <option>A5:14 x 21cm</option> <option>DL:9 x 21cm</option> <option value="iny">iný</option> </select> <div id="rozm_text" style="display:none;float:right;"> <label style="display:inline;">Å Ãrka(cm):</label><input name="rozm_textx" type="text" id="test" style="margin-left:10px;" /> <label style="display:inline;">Výška(cm):</label><input name="rozm_texty" type="text" style="margin-left:10px;" /> </div> <br /> <label>FarebnosÅ¥:</label><select name="farebnost" id="farebnost"> <option>4+4</option> <option>4+1</option> <option>4+0</option> <option>1+1</option> <option>1+0</option> </select><br /> <label>Papier:</label><select name="papier" id="papier" onchange="showtext(this.value)"> <option value="">vyber</option> <option value="leskly">lesklý</option> <option value="matny">matný</option> <option value="iny">iný</option> </select> <select name="p_leskly" id="lesk" style="display:none;margin-left:10px;float:right;"> <option>115 g/m2</option> <option>130 g/m2</option> <option>160 g/m2</option> <option>200 g/m2</option> <option>250 g/m2</option> <option>280 g/m2</option> </select> <select name="p_matny" id="mat" style="display:none;margin-left:10px;float:right;"> <option>80 g/m2</option> <option>90 g/m2</option> <option>130 g/m2</option> <option>160 g/m2</option> <option>200 g/m2</option> <option>250 g/m2</option> <option>280 g/m2</option> </select> <select name="p_iny" id="iny" style="display:none;margin-left:10px;float:right;"> <option>potom</option> </select> <br /> <label>Náklad:</label><input name="naklad" type="text" /> <label style="display:inline;margin-left:15px;">PoÄet druhov:</label><input name="pocetdruhov" type="text" /> <br /> <label>Lomy:</label><input name="lomy" type="text" /><br /> <label>Laminácia:</label><select name="laminacia" onChange="showlamin(this.value)"> <option>žiadna</option> <option value="l_mat">1+0 mat</option> <option value="l_mat">1+1 mat</option> <option>1+0 lesk</option> <option>1+1 lesk</option> </select> <div id="lamin" style="display:none;margin-left:15px;"> <label >Parcialny lak:</label><select name="parcialnylak" style="display:inline;"> <option>žiadny</option> <option>1+1 lesklý</option> <option>1+0 lesklý</option> </select></div> <p> <input type="submit" name="button" id="button" value="Submit" /> </p> </form> </body> </html> HTML: <?php $rozmery = $_POST['rozmery']; $rozm_textx = $_POST['rozm_textx']; $rozm_texty = $_POST['rozm_texty']; $farebnost = $_POST['farebnost']; $papier = $_POST['papier']; $p_leskly = $_POST['p_leskly']; $p_matny = $_POST['p_matny']; $p_iny = $_POST['p_iny']; $naklad = $_POST['naklad']; $pocetdruhov = $_POST['pocetdruhov']; $lomy = $_POST['lomy']; $laminacia = $_POST['laminacia']; $parcialnylak = $_POST['parcialnylak']; echo "Rozmery: ".$rozmery ." Iné rozmery (SxV): ".$rozm_textx." x ".$rozm_texty."<br />"; echo "Farebnost: ".$farebnost ."<br />"; echo "Papier: ".$papier; echo $p_leskly; echo $p_matny; echo $p_iny;"<br />"; echo "Naklad: ".$naklad ."<br />"; echo "Pocet druhov: ".$pocetdruhov ."<br />"; echo "Lomy: ".$lomy ."<br />"; echo "Laminacia: ".$laminacia; echo $parcialnylak;"<br />"; ?> PHP:
ex. if I fill the form, for example: as "rozmery" (1row) I select "iný" than I will see in the right 2 input fields, which I fill. Then if I wanna change "rozmery" and I choose A3 and I click on the submit button, then I will see both of the selection "A3" and firstly selected "iny" with both fields. I wanted this if I change an option, then I click on the submit button, I dont want to see unselected (not actual) options (as in the example). thank you
im newbie, I think it is ok i share my solution <?php $rozmery = $_POST['rozmery']; $rozm_textx = $_POST['rozm_textx']; $rozm_texty = $_POST['rozm_texty']; $farebnost = $_POST['farebnost']; $papier = $_POST['papier']; $p_leskly = $_POST['p_leskly']; $p_matny = $_POST['p_matny']; $p_iny = $_POST['p_iny']; $naklad = $_POST['naklad']; $pocetdruhov = $_POST['pocetdruhov']; $lomy = $_POST['lomy']; $laminacia = $_POST['laminacia']; $parcialnylak = $_POST['parcialnylak']; /*$rozmfix = $rozmery ; $rozmvar = echo "ine rozmery: ".$rozm_textx." x ".$rozm_texty."<br />"; */ if ($rozmery == "iny") { echo "Papier: Iné rozmery (SxV): ".$rozm_textx." x ".$rozm_texty."<br />"; } else { echo "Rozmery: ".$rozmery."<br />"; } /*echo "Rozmery: ".$rozmery ." Iné rozmery (SxV): ".$rozm_textx." x ".$rozm_texty."<br />"; */ echo "Farebnost: ".$farebnost ."<br />"; if ($papier == "leskly") { echo "Papier: ".$papier." ".$p_leskly."<br />"; } if ($papier == "matny") { echo "Papier: ".$papier." ".$p_matny."<br />"; } if ($papier == "iny") { echo "Papier: ".$papier." ".$p_iny."<br />"; } /*echo "Papier: ".$papier; echo $p_leskly; echo $p_matny; echo $p_iny;"<br />"; */ echo "Naklad: ".$naklad ."<br />"; echo "Pocet druhov: ".$pocetdruhov ."<br />"; echo "Lomy: ".$lomy ."<br />"; if ($laminacia == "l_mat") { echo "Laminacia: ".$laminacia." ".$parcialnylak."<br />"; } else{ echo "Laminacia: ".$laminacia; } /*echo "Laminacia: ".$laminacia; echo $parcialnylak;"<br />"; */ ?> PHP:
So, now I can do with my form: + hide/show selected elements + and the submit is OK ( echo only the selected-actual values) - now, I will try to make this form send as mail after submit that is all what i have <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> <script type="text/javascript"> function showtext(c) { if(c=="leskly") { document.getElementById("lesk").style.display="block"; } else { document.getElementById("lesk").style.display="none"; } if(c=="matny") { document.getElementById("mat").style.display="block"; } else { document.getElementById("mat").style.display="none"; } if(c=="iny") { document.getElementById("iny").style.display="block"; } else { document.getElementById("iny").style.display="none"; } } function rozmertext(a) { if(a=="iny") { //document.getElementById("rozm_text").style.display="block"; } else { document.getElementById("rozm_text").style.display="none"; } } function showlamin(b) { if(b=="l_mat") { document.getElementById("lamin").style.display="block"; } else { document.getElementById("lamin").style.display="none"; } } function clearFields() { document.getElementByName("rozm_textx").value = ""; } function clearFields1(f) { if(f=="iny"){ //document.getElementByName("rozm_textx").value = "no"; // document.getElementById("rozm_text").style.display="block"; document.getElementById("rozm_text").style.display="block"; //document.write("Hello World!"); //var name_element = document.getElementById('rozm_text'); //document.write(name_element); }} </script> </head> <body> <form action="proces.php" method="post"> <label>Rozmery:</label><select name="rozmery" id="rozmery" onChange="rozmertext(this.value)" onClick="clearFields1(this.value)"> <option>A3:29,7 x 42cm</option> <option>A4:21 x 29,7cm</option> <option>A5:14 x 21cm</option> <option>DL:9 x 21cm</option> <option value="iny">iný</option> </select> <div id="rozm_text" style="display:none;float:right;"> <label style="display:inline;">Å Ãrka(cm):</label><input name="rozm_textx" type="text" id="test" style="margin-left:10px;" /> <label style="display:inline;">Výška(cm):</label><input name="rozm_texty" type="text" style="margin-left:10px;" /> </div> <br /> <label>FarebnosÅ¥:</label><select name="farebnost" id="farebnost"> <option>4+4</option> <option>4+1</option> <option>4+0</option> <option>1+1</option> <option>1+0</option> </select><br /> <label>Papier:</label><select name="papier" id="papier" onchange="showtext(this.value)"> <option value="">vyber</option> <option value="leskly">lesklý</option> <option value="matny">matný</option> <option value="iny">iný</option> </select> <select name="p_leskly" id="lesk" style="display:none;margin-left:10px;float:right;"> <option>115 g/m2</option> <option>130 g/m2</option> <option>160 g/m2</option> <option>200 g/m2</option> <option>250 g/m2</option> <option>280 g/m2</option> </select> <select name="p_matny" id="mat" style="display:none;margin-left:10px;float:right;"> <option>80 g/m2</option> <option>90 g/m2</option> <option>130 g/m2</option> <option>160 g/m2</option> <option>200 g/m2</option> <option>250 g/m2</option> <option>280 g/m2</option> </select> <select name="p_iny" id="iny" style="display:none;margin-left:10px;float:right;"> <option>potom</option> </select> <br /> <label>Náklad:</label><input name="naklad" type="text" /> <label style="display:inline;margin-left:15px;">PoÄet druhov:</label><input name="pocetdruhov" type="text" /> <br /> <label>Lomy:</label><input name="lomy" type="text" /><br /> <label>Laminácia:</label><select name="laminacia" onChange="showlamin(this.value)"> <option>žiadna</option> <option value="l_mat">1+0 mat</option> <option value="l_mat">1+1 mat</option> <option>1+0 lesk</option> <option>1+1 lesk</option> </select> <div id="lamin" style="display:none;margin-left:15px;"> <label >Parcialny lak:</label><select name="parcialnylak" style="display:inline;"> <option>žiadny</option> <option>1+1 lesklý</option> <option>1+0 lesklý</option> </select></div> <p> <input type="submit" name="button" id="button" value="Submit" /> </p> </form> </body> </html> HTML: <?php $rozmery = $_POST['rozmery']; $rozm_textx = $_POST['rozm_textx']; $rozm_texty = $_POST['rozm_texty']; $farebnost = $_POST['farebnost']; $papier = $_POST['papier']; $p_leskly = $_POST['p_leskly']; $p_matny = $_POST['p_matny']; $p_iny = $_POST['p_iny']; $naklad = $_POST['naklad']; $pocetdruhov = $_POST['pocetdruhov']; $lomy = $_POST['lomy']; $laminacia = $_POST['laminacia']; $parcialnylak = $_POST['parcialnylak']; /*$rozmfix = $rozmery ; $rozmvar = echo "ine rozmery: ".$rozm_textx." x ".$rozm_texty."<br />"; */ if ($rozmery == "iny") { echo "Papier: Iné rozmery (SxV): ".$rozm_textx." x ".$rozm_texty."<br />"; } else { echo "Rozmery: ".$rozmery."<br />"; } /*echo "Rozmery: ".$rozmery ." Iné rozmery (SxV): ".$rozm_textx." x ".$rozm_texty."<br />"; */ echo "Farebnost: ".$farebnost ."<br />"; if ($papier == "leskly") { echo "Papier: ".$papier." ".$p_leskly."<br />"; } if ($papier == "matny") { echo "Papier: ".$papier." ".$p_matny."<br />"; } if ($papier == "iny") { echo "Papier: ".$papier." ".$p_iny."<br />"; } /*echo "Papier: ".$papier; echo $p_leskly; echo $p_matny; echo $p_iny;"<br />"; */ echo "Naklad: ".$naklad ."<br />"; echo "Pocet druhov: ".$pocetdruhov ."<br />"; echo "Lomy: ".$lomy ."<br />"; if ($laminacia == "l_mat") { echo "Laminacia: ".$laminacia." ".$parcialnylak."<br />"; } else{ echo "Laminacia: ".$laminacia; } /*echo "Laminacia: ".$laminacia; echo $parcialnylak;"<br />"; */ ?> PHP:
Yes, i found it <?php $Name = "Da Duder"; //senders name $email = "email@adress.com"; //senders e-mail adress $recipient = "PersonWhoGetsIt@emailadress.com"; //recipient $mail_body = "The text for the mail..."; //mail body $subject = "Subject for reviever"; //subject $header = "From: ". $Name . " <" . $email . ">\r\n"; //optional headerfields mail($recipient, $subject, $mail_body, $header); //mail command :) ?> PHP: I tested with this, and it works. I will implement it ...
Send form via email works too It is my solution (maybe it helps for somebody) <?php $rozmery = $_POST['rozmery']; $rozm_textx = $_POST['rozm_textx']; $rozm_texty = $_POST['rozm_texty']; $farebnost = $_POST['farebnost']; $papier = $_POST['papier']; $p_leskly = $_POST['p_leskly']; $p_matny = $_POST['p_matny']; $p_iny = $_POST['p_iny']; $naklad = $_POST['naklad']; $pocetdruhov = $_POST['pocetdruhov']; $lomy = $_POST['lomy']; $laminacia = $_POST['laminacia']; $parcialnylak = $_POST['parcialnylak']; /*$rozmfix = $rozmery ; $rozmvar = echo "ine rozmery: ".$rozm_textx." x ".$rozm_texty."<br />"; */ if ($rozmery == "iny") { $x_rozm_text = $rozm_textx; $y_rozm_text = $rozm_texty; $vs_rozmery = "Iné rozmery (SxV): ".$x_rozm_text." x ".$y_rozm_text; echo "Rozmery: ".$vs_rozmery."<br />"; } else { $vs_rozmery = $rozmery; echo "Rozmery: ".$vs_rozmery."<br />"; } /*echo "Rozmery: ".$rozmery ." Iné rozmery (SxV): ".$rozm_textx." x ".$rozm_texty."<br />"; */ echo "Farebnost: ".$farebnost ."<br />"; if ($papier == "leskly") { $typ_papier = $p_leskly; echo "Papier: ".$papier." ".$typ_papier."<br />"; } if ($papier == "matny") { $typ_papier = $p_matny; echo "Papier: ".$papier." ".$typ_papier."<br />"; } if ($papier == "iny") { $typ_papier = $p_iny; echo "Papier: ".$papier." ".$typ_papier."<br />"; } /*echo "Papier: ".$papier; echo $p_leskly; echo $p_matny; echo $p_iny;"<br />"; */ echo "Naklad: ".$naklad ."<br />"; echo "Pocet druhov: ".$pocetdruhov ."<br />"; echo "Lomy: ".$lomy ."<br />"; if ($laminacia == "l_mat") { $typ_laminacia = $parcialnylak; echo "Laminacia: ".$laminacia." - ".$typ_laminacia."<br />"; } else{ echo "Laminacia: ".$laminacia; } /*echo "Laminacia: ".$laminacia; echo $parcialnylak;"<br />"; */ $Name = "Jencike"; //senders name $email = "email@adress.com"; //senders e-mail adress $recipient = "xy@vzl.com"; //recipient $mail_body = "Rozmery: ".$vs_rozmery."\n"; //mail body $mail_body .= "Farebnost: ".$farebnost."\n"; $mail_body .= "Papier: ".$papier." - ".$typ_papier."\n"; $mail_body .= "Naklad: ".$naklad."\nPocet druhov: ".$pocetdruhov."\n"; $mail_body .= "Lomy: ".$lomy ."\nLaminacia :".$laminacia." - ".$typ_laminacia; /*$mail_body = "Normal uzenet"; //mail body */ $subject = "Fejlec"; //subject $header = "From: ". $Name . " <" . $email . ">\r\n"; //optional headerfields mail($recipient, $subject, $mail_body, $header); //mail command :) ?> PHP: I posted only the php, the html is the same. But, I dont have any idea, how to calculate this form. for example if I want to calculate with this. ...