2016-01-10 2 views
2

Учитывая код выше, (внутри php-файла, поэтому не стоит беспокоиться о некоторых синтаксических ошибках, которые вы могли заметить), проблема заключается в том, что при нажатии кнопки отмены в диалоговом окне подтверждения(), которое будет отображаться. поскольку этот вопрос можно считать двойным, так как, да, я нашел несколько вопросов, относящихся к этому, но я просто не могу исправить это сам. тот, который я нашел, что-то вроде этого:Javascript confirm() по-прежнему выполняет действие при нажатии на отмену. :(

"if (confirm('Are you...?')) commentDelete(1); return false" 

Я не могу найти способ решить эту проблему, я не знаю, в какую часть я должен вставить команду SQL (удалить) в этом формате. Пожалуйста, покажите мне, как это сделать правильно. :) спасибо!

+1

попробовать 'если возвращение (подтверждающим() 'сообщение'!);' – RamRaider

ответ

1

EDIT: Я только что видел, что Ник Zuber опубликовал аналогичный ответ около 1 минуты, прежде чем я отправил мое (на самом деле, когда я писал это: P)

Я не совсем понимаю, что вы пытаетесь сделать. Вы хотите показать пользователю окно подтверждения, и если они нажмут «Да», удалите некоторую запись в базе данных, и если они нажмут «Нет», перенаправите их на страницу «users.php»?

Если это то, что вы хотите сделать, то вы не можете сделать это так. Вы не можете использовать JS-условия с PHP. Код PHP выполняется на стороне сервера (на сервере), тогда как JS-код выполняется на стороне клиента (в браузере). Вам нужно будет сделать что-то вроде этого:

предупреждение: не используйте этот код, он небезопасный и никогда не должен использоваться в реальном приложении, он просто должен показать вам, как работает все это

(IN USERS.PHP)

if(isset($_GET['delete_dat_user'])) 
{ 
    $qqq = mysql_query("DELETE from users WHERE panelistname='" . $_GET['delete_dat_user'] . "'") or die(mysql_error()); 
} 

(В WEBPAGE)

if(confirm('u serious u want to delete the user')) 
{ 
    window.location = 'users.php?delete_dat_user=theUserName'; 
} 
else 
{ 
    nope 
} 
+0

, так как Ник Зубер отправил свой ответ перед вами, я думаю, мне сначала нужно попробовать его идею :), но в любом случае ваш ответ дал мне подсказку как-то, поэтому, я думаю, вы заслуживаете моей благодарности за это :) Спасибо за этот ответ (y) –

+1

@PatrickJohnCalumno Какой бы подход вы ни выбрали, лучше всего для вас, мы все здесь, чтобы помочь :) –

1

Когда ваша страница загружается, PHP на вашей странице будет автоматически выполняться независимо от вашего JavaScript. Вместо этого попробуйте указать пользователю, хотите ли они удалить учетную запись и , если они нажмут да перенаправить их на страницу с запросом PHP.

Кроме того, функция confirm возвращает логическое значение в зависимости от того, какая опция нажата пользователем. Попробуйте положить его в if заявление:

if(confirm("Delete user?.")){ 
    window.location.href = "delete_user_page.php"; 
}else{ 
    // cancel was clicked 
} 
+0

хороший язь а. Gotta попробовать это :) спасибо @NickZuber –