依赖下拉列表获取ID不是名称

时间:2017-06-25 09:21:07

标签: php jquery mysql

我正在尝试从php表单中选择用户,但我没有使用名称来获取元素ID。而不是ids我想得到名字。请帮忙 这是网址 http://efinancec.com/d/drop4/index.php 这是代码

   <form action="../form/form1.php" method="post" enctype="multipart/form-data">

<div class="frmDronpDown">
<div class="row">
<label>Training:</label><br/>
<select name="training" id="training-list" class="demoInputBox" onChange="getCourse(this.value);">
<option value="">Select Training</option>
<?php
foreach($results as $training) {
?>
<option value="<?php echo $training["id"]; ?>"><?php echo $training["training"]; ?></option>
<?php
}
?>
</select>
</div>
<div class="row">
<label>Course:</label><br/>
<select name="course" id="course-list" class="demoInputBox" onChange="getCountry(this.value);">
<option value="">Select Course</option>
</select>
</div>


<div class="row">
<label>Country:</label><br/>
<select name="country" id="country-list" class="demoInputBox" onChange="getCity(this.value);">
<option value="">Select Country</option>
</select>
</div>


<div class="row">
<label>City:</label><br/>
<select name="city" id="city-list" class="demoInputBox" onChange="getDates(this.value);">
<option value="">Select City</option>
</select>
</div>

<div class="row">
<label>Dates:</label><br/>
<select name="dates" id="dates-list" class="demoInputBox" onChange="getPrice(this.value);">
<option value="">Select Dates</option>
</select>
</div>

<div class="row">
<label>Online Onsite Price:</label><br/>
<select name="price" id="price-list" class="demoInputBox">
<option value="">Select Online or Onsite</option>
</select>
</div>
            <input id="submit" name="submit" type="submit" value="Submit">

        </form>

这就是我从sql database

获取值的方法
    <?php
require_once("dbcontroller.php");
$db_handle = new DBController();
if(!empty($_POST["training_id"])) {
    $query ="SELECT * FROM course WHERE training_id = '" . $_POST["training_id"] . "'";
    $results = $db_handle->runQuery($query);
?>
    <option value="">Select Course</option>
<?php
    foreach($results as $course) {
?>
    <option value="<?php echo $course["id"]; ?>"><?php echo $course["course"]; ?></option>
<?php
    }
}
?>

2 个答案:

答案 0 :(得分:0)

更改此行:

 onChange="getCourse(this.value);">

对此:

 onChange="getCourse(this.text);">

您正在传递课程的ID作为下拉列表的值并调用该值,但是您需要调用select选项的文本来获取课程名称。

答案 1 :(得分:0)

我按照建议将this.value更改为this.text并创建了新页面并且它现在停止工作现在它不会从数据库中提取记录,除了第一个。链接在这里 http://efinancec.com/d/drop4/index1.php 我的早期页面仍然正常工作的地方。 http://efinancec.com/d/drop4/index.php 我想我不能早点传达我的问题。我依赖的下拉列表工作正常,但当用户在电子邮件中提交表单时,我会收到ID而不是名称。那就是问题。
例如,我自己在index.php和提交表单上做了一些选择这是我收到的电子邮件 培训:1  课程:101  国家:1001  城市:5005 基本上我得到的是各自的ID而不是名字。