使用PHP select query中的default选项运行查询 [英] Run query with default option from PHP select query

查看:72
本文介绍了使用PHP select query中的default选项运行查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经从MySQL列创建了select下拉列表。当用户单击按钮时,它使用get方法从另一个页面运行php代码。我在get session中存储了2个变量。但是当在IE中加载第一次页面时,我收到错误:

注意:未定义的索引:id 





但是如果我按下按钮,查询成功并在表格中回显值。在下拉列表中设置了默认选项,但是我必须再次单击以在IE和Mozilla中成功查询结果。 Chrome中的页面加载没有问题。

我尝试使用javascript只按一次按钮,但是按钮会反复点击,导致页面不断加载。



我的尝试:



主页:

< pre lang =PHP> < pre > $ array_id = $ _SESSION ['id'];
// print_r($ array_id);

//获取版本ID
$ version_id = $ array_id [array_keys($ array_id)[0]];
// echo $ version_id;

//查找发送版本号
$ print_version = $ conn-> query(SELECT nx_version FROM workflow1 WHERE id ='$ version_id';);
$ print_version1 = Array();
while($ result_step2 = $ print_version-> fetch_assoc()){
$ print_version1 [] = $ result_step2 ['nx_version'];
}

// echo $ print_version1 [array_keys($ print_version1)[0]];
$ result = $ conn-> query(SELECT DISTINCT nx_version FROM workflow1 ORDER BY id DESC);
echo< 表格 action =' http:// localhost / w_5aug / process.php' id =' frm1' 方法 =' get' > ;
echo< html > < /跨度>;
echo< body > < /跨度>;
echo< p > < / p > ;
echo< center > < /跨度>;
echo选择Base Verison进行比较:;
echo< 选择 名称 =' nx_version' id =' nx_version' > ;
while($ row = $ result-> fetch_assoc()){
$ nx_version = $ row ['nx_version'];
if($ print_version1 [array_keys($ print_version1)[0]] == $ nx_version){
echo'< 选项 已选择 = 选中 > '。$ nx_version。'< / option > ';
} else {
echo'< 选项 > '。$ nx_version。'< / option > ';
}

}
echo< / select > ;
echo< 按钮 类型 =' 提交' id =' myButton' > 添加Base Verison < / button > ;
echo< / center > ;
echo< / body > ;
echo< / html > ;
echo< p > < / p > ;

$ array_select = $ _SESSION ['data'];
print_r($ array_select);

echo< 表格 > ;





Process.php:

 $ query = $ conn-> query(SELECT step1,step2 FROM workflow1 WHERE nx_version ='$ nx_version'LIMIT 1); 
if($ query){
$ array_select = mysqli_fetch_row($ query);
print_r($ array_select);
}

// $ array_select = Array();
//查找发送版本号
$ id = $ conn-> query(SELECT id FROM workflow1 WHERE nx_version ='$ nx_version'LIMIT 1);
$ array_id = Array();
while($ result1 = $ id-> fetch_assoc()){
$ array_id [] = $ result1 ['id'];
}

$ _SESSION ['id'] = $ array_id;
$ _SESSION ['data'] = $ array_select;

解决方案

array_id =


< BLOCKQUOTE> _SESSION [ 'ID'];
// print_r(


array_id);

//获取版本ID


I have created select drop-down from MySQL column. When user clicks button it runs php code from another page using get method. I have stored 2 variables in get session. But when first time page is loaded in IE, i get error:

Notice: Undefined index: id 



But if I hit button, query is successful and echoes value in table. There is default option set in dropdown but, again I have to click to query result successfully in IE and Mozilla. No issue on page load in Chrome.
I tried to hit button only once using javascript but it button gets hit repeatedly resulting in page load continuously.

What I have tried:

Main Page:

<pre>$array_id = $_SESSION['id'];
//print_r($array_id);

//Get version id
$version_id = $array_id[array_keys($array_id)[0]];
//echo $version_id;

// Find send version number
$print_version = $conn->query("SELECT nx_version FROM workflow1 WHERE id='$version_id';"); 
$print_version1 = Array();
while($result_step2 = $print_version->fetch_assoc()){
    $print_version1[] = $result_step2['nx_version'];
}

//echo $print_version1[array_keys($print_version1)[0]];
    $result = $conn->query("SELECT DISTINCT nx_version FROM workflow1 ORDER BY id DESC");
    echo "<form action='http://localhost/w_5aug/process.php' id='frm1' method='get'>";
    echo "<html>";
    echo "<body>";
	echo "<p></p>";
	echo "<center>";
	echo " Select Base Verison To Compare With : ";
    echo "<select name='nx_version' id='nx_version'>";
while ($row = $result->fetch_assoc()) {
         $nx_version = $row['nx_version']; 
         if($print_version1[array_keys($print_version1)[0]] == $nx_version){
          echo '<option selected="selected">'.$nx_version.'</option>';
        }else{
          echo '<option>'.$nx_version.'</option>';
        }

 }
    echo "</select>";
    echo " <button type='submit' id='myButton'>Add Base Verison</button>";	
	echo "</center>";
    echo "</body>";
    echo "</html>";
	echo "<p></p>";	
	
	$array_select = $_SESSION['data'];
	print_r($array_select);

	echo "<form>";



Process.php:

$query = $conn->query("SELECT step1, step2 FROM workflow1 WHERE nx_version='$nx_version' LIMIT 1");
if ($query) {
    $array_select = mysqli_fetch_row($query);
    print_r($array_select);
}

//$array_select = Array();
// Find send version number
$id = $conn->query("SELECT id FROM workflow1 WHERE nx_version='$nx_version' LIMIT 1");
$array_id = Array();
while($result1 = $id->fetch_assoc()){
    $array_id[] = $result1['id'];
}

$_SESSION['id'] = $array_id;
$_SESSION['data'] = $array_select;

解决方案

array_id =


_SESSION['id']; //print_r(


array_id); //Get version id


这篇关于使用PHP select query中的default选项运行查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆