我正在为WordPress创建一个插件。使用此插件,管理员可以从后端插入项目。这些项目在数据库中的值始终为“0”。
从ui中,每个人都可以插入项目,但这些项目在数据库中的值为“1”。
我只想在GUI的页面上显示值为“0”的项目。
使用此代码,我可以在我的课程中获取数据库项目。
public function getProjectenList() {
global $wpdb;
$return_array = array();
$result_array = $wpdb->get_results("SELECT * FROM `" . $wpdb->prefix .
"ivs_canvas_tabel` ORDER BY `id`", ARRAY_A);
这是视图中的代码:
<?php
if ($projecten->getNrOfProjecten() < 1) {
?>
<tr><td colspan="4">Voeg een project of media-uiting toe</tr>
<?php
} else {
$cat_list = $projecten->getProjectenList();
//** Show all projects in the tabel
foreach ($cat_list as $project_obj) {
// Create update link
$params = array('action' => 'update', 'id' => $project_obj->getId());
// Add params to base url update link
$upd_link = add_query_arg($params, $base_url);
// Create delete link
$params = array('action' => 'delete', 'id' => $project_obj->getId());
// Add params to base url delete link
$del_link = add_query_arg($params, $base_url);
?>
<tr><td width="10" style="vertical-align: top;"><?php echo $project_obj->getId(); ?>
</td>
<?php
// If update and id match show update form
// Add hidden field id for id transfer
if (($action == 'update') &&
($project_obj->getId() == $get_array['id'])) {
?>
<td width="150" style="vertical-align: top;"><input type="hidden" name="id" value="<?php echo $project_obj->getId(); ?>">
<input type="text" name="naam" value="<?php echo $project_obj->getNaam(); ?>"></td>
<td width="10" style="vertical-align: top;"><input type="text" name="level" value ="<?php echo $project_obj->getLevel(); ?>"></td>
<td width="300" style="vertical-align: top;"><textarea name="beschrijving" maxlength="200"> <?php echo $project_obj->getBeschrijving(); ?></textarea></td>
<td><input type='file' name='afbeelding' value="<?= IVS_CANVAS_PLUGIN_INCLUDES_UPLOAD_IMGS_DIR_URL . $project_obj->getAfbeelding() ?>"></td>
<td colspan="2"><input type="submit" name="update"
value="Updaten"/></td>
<?php } else { ?>
<td width="150" style="vertical-align: top;"><?php echo
$project_obj->getNaam(); ?></td>
<td width="10" style="vertical-align: top;"><?php echo
$project_obj->getLevel(); ?></td>
<td width="300" style="vertical-align: top;"><?php echo $project_obj->getBeschrijving(); ?></td>
<td width="100"><img src="<?= IVS_CANVAS_PLUGIN_INCLUDES_UPLOAD_IMGS_DIR_URL . $project_obj->getAfbeelding() ?>" width="100px" height="100px"/></td></td>
<?php
if ($action !== 'update') {
// If action is update don’t show the action button
?>
<td><button><a href="<?php echo $upd_link; ?
>">Wijzigen</a></button></td>
<td><button><a href="<?php echo $del_link; ?
>">Verwijderen</a></button></td>
<?php
} // if action !== update
?>
<?php } // if acton !== update ?>
</tr>
<?php
}
}
?>
表格结构
$sql = "CREATE TABLE $table_name (
id int (100) NOT NULL AUTO_INCREMENT,
naam varchar (255) NOT NULL,
level int (10) NOT NULL,
beschrijving varchar (1024) NOT NULL,
afbeelding varchar(1024) NOT NULL,
status int (1) NOT NULL,
PRIMARY KEY (id)
)
我希望有人可以帮助我!
答案 0 :(得分:0)
如果您只希望某个列中包含值的项目为0,则可以在查询中添加where
过滤器
$result_array = $wpdb->get_results("SELECT * FROM `" . $wpdb->prefix . "ivs_canvas_tabel` WHERE some_column = 0 ORDER BY `id`", ARRAY_A);
以上只会返回some_column
为零的项目,如果some_column
具有管理项目和用户项目的此标志,请使用您的列名称