Это мои проблемы:
Значение, выбранное в раскрывающемся списке из двух, вернется к значению по умолчанию
когда браузер реализует функцию onchange в форме.
Я хочу создать таблицу, и данные должны быть одинаковыми с
таблица, которую я выбрал из второго выпадающего списка.
Это мой код
PHP
<?php
$connectDatabase = mysql_connect("localhost","root","") or die(mysql_error());
$tables = array();
if(isset($_POST['select_db']))
{ // if its submitted
$select_db = $_POST['select_db'];
$mysql_select_db = mysql_select_db($select_db,$connectDatabase);
$drop_table = mysql_query("DROP TABLE pdf_table",$connectDatabase);
$query = "SHOW TABLES FROM $select_db";
$mysql_query = mysql_query($query,$connectDatabase);
while($row =mysql_fetch_assoc($mysql_query))
{
$tables[] = $row['Tables_in_' . $select_db]; // use associative instead
}
}
if(isset($_POST['select_table']))
{
$select_table = $_POST['select_table'];
$db = mysql_select_db($select_db,$connectDatabase);
$query_select = "Create Table pdf_table AS ( SELECT * FROM $select_table)";
$select_query = mysql_query($query_select,$connectDatabase);
}
?>
HTML-код
<form class="Search_Form" action="moduleindex.php" method="POST">
<select name="select_db" onchange="this.form.submit();">
<option disabled selected>Select Database</option>
<option>section_masterfile</option>
</select>
<select onchange="this.form.submit();" name="select_table">
<option disabled selected>Select Table</option>
<?php foreach($tables as $table): ?>
<option value="<?php echo $table; ?>"><?php echo $table; ?></option>
<?php endforeach; ?>
</select>
</form>
Добавьте проверку в цикле foreach при генерации Options, если какое-то значение отправлено и значение равно значению цикла
<select onchange="this.form.submit();" name="select_table">
<option disabled selected>Select Table</option>
<?php foreach($tables as $table){?>
<?php
$selected ="";
if(isset($_POST['select_table']) && $_POST['select_table'] == $table){
$selected = 'selected="selected"';} ?>
<option value="<?php echo $table; ?>" <?php echo $selected ;?> ><?php echo $table; ?></option>
<?php }?>
</select>
Других решений пока нет …