Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php html单选按钮,带有带有文本框的“其他”选项_Php_Html_Mysql - Fatal编程技术网

Php html单选按钮,带有带有文本框的“其他”选项

Php html单选按钮,带有带有文本框的“其他”选项,php,html,mysql,Php,Html,Mysql,当我的insert运行时,它将在文本框中写入文本,但如果我选择了单选按钮选择,则不会在表中插入任何内容。 如果删除othercode,则选中的单选按钮将写入表中 这是密码 <input type="radio" name="job" value="PHP Programmer">PHP Programmer <input type="radio" name="job" value="SQL Programmer">SQL Programmer<br> <

当我的insert运行时,它将在文本框中写入文本,但如果我选择了单选按钮选择,则不会在表中插入任何内容。 如果删除othercode,则选中的单选按钮将写入表中

这是密码

<input type="radio" name="job" value="PHP Programmer">PHP Programmer
<input type="radio" name="job" value="SQL Programmer">SQL Programmer<br>
<input type="radio" name="job">Other <input type="text" name="job" >

<h3>* If yes, check which ISO standard(s) you are accredited?</h3>
<input type="radio" name="iso_standard" value="17020">17020
<input type="radio" name="iso_standard" value="17025">17025

<br />
<input action="submit" type="submit" name="submit" value="Submit">
</form>

<?php
  if(isset($_POST['job']) && isset($_POST['iso_standard']))
  { 
$job = mysqli_real_escape_string($db, $_POST['job']);
$iso_standard =mysqli_real_escape_string($db, $_POST['iso_standard']);


  $sql="insert into tbl_test_insert(iso_cert, iso_standard)
  values ('$job', '$iso_standard')";

  if(!mysqli_query($db, $sql))
  {
die('Error: ' .mysqli_error($db));
  }
  echo "1 record added";
  }
  else
  {
echo "You didn't choose all the options!
  }

  ?>

您正在使用文本输入字段覆盖作业的值。它是否有价值并不重要

请将您的姓名重命名为otherJob,您应该很好

编辑:

换其他

对其他

change$job=mysqli\u real\u escape\u string$db,$\u POST['job']

并将$sql=insert更改为tbl\U test\U insertiso\U证书,iso\U标准 值“$job”、“$iso_标准”

to$sql=插入tbl\u测试\u插入iso\u证书,iso\u标准
值“$jobField”、“$iso_standard”

您的文本输入和单选按钮组不应共享相同的名称。谢谢,我按照建议重命名了。现在,当我在文本框中键入文本时,无论键入什么,唯一写入表中的内容。这是因为另一个单选按钮没有值。请查看我编辑的答案谢谢你的帮助
  $job = mysqli_real_escape_string($db, $_POST['job']);
  $otherJob = mysqli_real_escape_string($db, $_POST['otherJob']);
  if ($job == 'other') {
     $jobField = $otherJob;
  } else {
     $jobField = $job;
  }