Intereting Posts
Редактирование ссылок по умолчанию, например «Администратор сайта» в мета-секции боковой панели? Настройки моего адаптера не установлены на значение по умолчанию и необходимо щелкнуть по кнопке «По умолчанию» элемента управления, прежде чем он будет установлен. Удалить дублирующиеся значения из цикла Получить заголовки всех сообщений с текущими тегами, кроме текущей записи BCC для подписчиков Как правильно вызывать настраиваемые даты полей в фильтр posts_where с использованием операторов SQL отображение метабокса на переднем конце (my-metabox-class) Добавление контента в другую таксономию $ wpdb-> insert работает несколько раз при загрузке страницы, но только один раз вызывает Всегда вставлять текст в визуальный редактор Таблицы и псевдонимы WordPress? Как получить информацию о типе сообщения? Меню архива разметки функциональных фильтров Изменение ширины значка избранного изображения на странице «Добавить / Редактировать страницу» Как я должен обрабатывать ошибки в плагине?

Получать обновленные результаты запроса на странице после вставки в базу данных

Я работаю в WordPress. Вы увидите два запроса, которые один выбирает, а другой – запрос вставки. Я хочу, чтобы после запуска моего запроса на вставку я получил обновленные результаты на моей странице.

В запросе выбора есть тег формы с кнопкой отправки … который при передаче выбирает идентификатор или текущую выбранную строку и выполняет вставку с тем же идентификатором в другой таблице. Но после этого нажмите, чтобы отправить мою страницу, не показывает обновленное значение или вставленное значение из базы данных. Надеюсь, вы, люди, можете посоветовать в этом … спасибо.

PHP-код в шаблоне страницы WordPress

$sql = "SELECT 1user.uid, 1user.username, 1user.competition, 1user.path, Sum(votes.votes) AS votessum FROM 1user LEFT JOIN votes on 1user.uid=votes.uid GROUP BY 1user.username, 1user.competition"; $results = $wpdb->get_results($sql) or die(mysql_error()); foreach( $results as $result ) { echo '<form action="" method="post">'; echo "<img src='$result->path' width='150' height='150' >" . '<br><br>'; echo "<input name='id' type='hidden' value='$result->uid'>"; echo "<input name='comp' type='hidden' value='$result->competition'>"; echo $result->username.'<br>'; echo $result->votessum.'<br>'; echo "<input style='margin-bottom:30px;' value='vote' name='submit' type='submit'/></form>"; } if(isset($_POST['submit'])){ global $wpdb; $votes = 1; $competition = $_POST['comp']; $uid = $_POST['id']; //$uid = get_current_user_id(); echo 'id of image = '.$_POST['id']; echo '<br>'.'competition is'.$_POST['comp']; if($wpdb->insert( 'votes', array( 'votes' => $votes, 'competition' => $competition, 'uid' => $uid ) ) == false) wp_die('Database Insertion failed'); else echo 'Database insertion successful<p />'; } 

Переместите запрос insert в начало файла. Таким образом, он будет выбирать обновленные данные.

 <?php // Save form data if(isset($_POST['submit'])){ global $wpdb; $votes = 1; $competition = $_POST['comp']; $uid = $_POST['id']; //$uid = get_current_user_id(); echo 'id of image = '.$_POST['id']; echo '<br>'.'competition is'.$_POST['comp']; if($wpdb->insert( 'votes', array( 'votes' => $votes, 'competition' => $competition, 'uid' => $uid ) ) == false) wp_die('Database Insertion failed'); else echo 'Database insertion successful<p />'; } // Get already updated results $results = $wpdb->get_results($sql) or die(mysql_error()); foreach( $results as $result ) { echo '<form action="" method="post">'; echo "<img src='$result->path' width='150' height='150' >" . '<br><br>'; echo "<input name='id' type='hidden' value='$result->uid'>"; echo "<input name='comp' type='hidden' value='$result->competition'>"; echo $result->username.'<br>'; echo $result->votessum.'<br>'; echo "<input style='margin-bottom:30px;' value='vote' name='submit' type='submit'/></form>"; } ?>