gpt4 book ai didi

php - 每个输入的不同 sql 查询

转载 作者:行者123 更新时间:2023-11-30 21:59:37 25 4
gpt4 key购买 nike

我有一个输入,我想在提交输入时运行一些 sql 查询。但我想为每个输入运行不同的 sql 查询。例如,如果我把我的 <?php echo $value['id'][$i]; ?>输入附近的代码,它显示 id 就像这张图片中的一样。 Input Id's

我的输入表单是这样的:

<form action='' method='POST' style="margin-top: 213px;">   
<input type='submit' name='submit'/><?php echo $value['id'][$i]; ?>
</form>

我的if代码是这样的:

if(isset($_POST['submit'])){
$wpdb->update( $wpdb->options, array("option_value" => "ff0000"), array("option_name" => "theme-bg"), array("%s"), array("%s") ); }

我想编辑 if 代码并为每个输入按钮运行不同的 sql 查询。我希望我能解释我的问题。

感谢阅读。

Edit1:我的整个代码;

                        <?php
$i = 0;
foreach ($value['options'] as $box):
$checked = '';
$class = '';
$img_size = '';


if ($value['image_size'][$i])
$img_size = 'width="' . $value['image_size'][$i] . '"';
else if ($value['image_size'][$i] == false && $value['image_size'][0] == true)
$img_size = 'width="' . $value['image_size'][0] . '"';
else
$img_size = 'width=""';




if (get_option($value['id'][$i])) {
if (get_option($value['id'][$i]) == 'true') {
$checked = ' checked="checked"';
$class = ' acesra-img-selected';
}
} elseif ($value['default'][$i] == "checked") {
$class = ' acesra-img-selected';
$checked = ' checked="checked"';
}
?>
<label class="self-theme-select<?php echo $class; ?>" for="<?php echo $value['id'][$i]; ?>">
<img src="<?php echo $value['image_src'][$i]; ?>" alt="<?php echo $box ?>" />
<input class="acera-image-checkbox-b" type="checkbox"<?php echo $checked; ?> name="<?php echo $value['id'][$i]; ?>" id="<?php echo $value['id'][$i]; ?>" />
<?php if ($value['show_labels'] == "true"): ?><p><?php echo $box; ?></p><?php endif; ?>
<form action='' method='POST' style="margin-top: 213px;">
<input type='submit' name='submit'/><?php echo $value['id'][$i]; ?>
</form>
</label>
<?php if(isset($_POST['submit'])){

$wpdb->update( $wpdb->options, array("option_value" => "ff0000"), array("option_name" => "tema-bg"), array("%s"), array("%s") );
} ?>

<?php
$i++;
endforeach;
?>
</div>

最佳答案

你可以这样做:

<form action='' method='POST' style="margin-top: 213px;">   
<input type='submit' name='submit1'/><?php echo $value['id'][$i]; ?>
<input type='submit' name='submit2'/><?php echo $value['id'][$i]; ?>
<input type='submit' name='submit3'/><?php echo $value['id'][$i]; ?>
</form>

然后:

if(isset($_POST['submit1'])){
$wpdb->update( $wpdb->options, array("option_value" => "ff0000"), array("option_name" => "theme-bg"), array("%s"), array("%s") ); }
elseif(isset($_POST['submit2'])){
//another query for submit2
}
elseif(isset($_POST['submit3'])){
//another query for submit3
}

已编辑您的代码

更改了这一行:

<input type='submit' name='submit<?php echo $i ?>'/><?php echo $value['id'][$i]; ?>

这里我们为name属性动态创建值

<?php
$i = 0;
foreach ($value['options'] as $box):
$checked = '';
$class = '';
$img_size = '';

if ($value['image_size'][$i])
$img_size = 'width="' . $value['image_size'][$i] . '"';
else if ($value['image_size'][$i] == false && $value['image_size'][0] == true)
$img_size = 'width="' . $value['image_size'][0] . '"';
else
$img_size = 'width=""';

if (get_option($value['id'][$i])) {
if (get_option($value['id'][$i]) == 'true') {
$checked = ' checked="checked"';
$class = ' acesra-img-selected';
}
} elseif ($value['default'][$i] == "checked") {
$class = ' acesra-img-selected';
$checked = ' checked="checked"';
}
?>

<label class="self-theme-select<?php echo $class; ?>" for="<?php echo $value['id'][$i]; ?>">
<img src="<?php echo $value['image_src'][$i]; ?>" alt="<?php echo $box ?>" />
<input class="acera-image-checkbox-b" type="checkbox"<?php echo $checked; ?> name="<?php echo $value['id'][$i]; ?>" id="<?php echo $value['id'][$i]; ?>" />
<?php if ($value['show_labels'] == "true"): ?><p><?php echo $box; ?></p><?php endif; ?>
<form action='' method='POST' style="margin-top: 213px;">
<input type='submit' name='submit<?php echo $i ?>'/><?php echo $value['id'][$i]; ?>
</form>
</label>

<?php
if(isset($_POST['submit0'])){
$wpdb->update( $wpdb->options, array("option_value" => "ff0000"), array("option_name" => "tema-bg"), array("%s"), array("%s") );
}elseif(isset($_POST['submit1'])){
// query for submit1
}elseif(isset($_POST['submit2'])){
// query for submit2
}elseif(isset($_POST['submit3'])){
// query for submit3
}
?>

<?php
$i++;
endforeach;
?>
</div>

我还编辑了这个 block :

<?php
if(isset($_POST['submit0'])){
$wpdb->update( $wpdb->options, array("option_value" => "ff0000"), array("option_name" => "tema-bg"), array("%s"), array("%s") );
}elseif(isset($_POST['submit1'])){
// query for submit1
}elseif(isset($_POST['submit2'])){
// query for submit2
}elseif(isset($_POST['submit3'])){
// query for submit3
}
?>

但是这个可能适合您的 foreach 循环。像这样:

<?php
if(isset($_POST['submit'.$i])){ // adding $i here
$wpdb->update( $wpdb->options, array("option_value" => "ff0000"), array("option_name" => "tema-bg"), array("%s"), array("%s") );
}
?>

虽然这取决于您的查询在每种提交情况下的准确程度。

关于php - 每个输入的不同 sql 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43814909/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com