PHP Alert...

phpusershik

Using PHP
PHP Alert...

Как можно зделать *PHP Alert* что-бы при выборе он выводил что хочеш ли или нет *Да* или *Нет* если кликнул на ДА то перешел по ссылке и если клик по НЕТ то не перешол.
//
$sql = "SELECT * FROM table Where t1='apple' ORDER by kind";
$result = mysql_query($sql,$dbd);
echo "<select size=\"1\" name=\"per\" onChange=\"parent.location.href = this.options[ this.selectedIndex].value;\">";
echo "<option name=\"per\" value=\"\">Choose apple</option>";
while ($array = mysql_fetch_array($result)) {
echo "<option name=\"per\" value=\"http://apple.com/test.php?t2=".$array['mac']." \">".$array['mac']." || ".$array['kind']."</option>";
}
echo "</select>";
//
 

kvf77

Red Devil
phpusershik

не совсем понял, что за штука такая "PHP Alert", но если ты имеешь ввиду окошко с запросом на подтверждение, то это JavaScript.

Еще вопросы: при каких обстоятельствах оно должно появляться?
 

phpusershik

Using PHP
Автор оригинала: kvf77
phpusershik

не совсем понял, что за штука такая "PHP Alert", но если ты имеешь ввиду окошко с запросом на подтверждение, то это JavaScript.

Еще вопросы: при каких обстоятельствах оно должно появляться?
При выборе из выпадающего меню (селекта) какого-нибуд значения.
А если это JS то пойду задавать там етот вопрос ....
Я знаю на JS вот такую но он для формы:
function ProcessSubmit()
{
return confirm("?");
}
 

confguru

ExAdmin
Команда форума
На onChange
нужно повесить свою JS функцию которая выводит Alert
и редиректит
 

Фанат

oncle terrible
Команда форума
phpusershik
то, что тебе нужно, называется не alert, а confirm
и к PHP отношения не имеет.
 

basboy

Новичок
Как уже говорили, задача к PHP не имеет никакого отношения.
Но можно скомбинировать с JS при помощи редиректов и сабмитов.
 

Фанат

oncle terrible
Команда форума
Я знаю на JS вот такую но он для формы:
function ProcessSubmit()
{
return confirm("?");
}
во-первых, функция здесь не нужна.
пожно просто писать return confirm("?"); в нужном месте
во-вторых, это не только для формы, а пишется где угодно.
 

phpusershik

Using PHP
Фанат сказал функция тут не причём но все таки я попробовал он вроде бы выдает OK/ Cancel но все равно переходит при нажатии, наверно что то я не так делаю?
//
<script language=javascript>
function mes ()
{
return confirm("Do you want redirect?");
}
</script>
$sql = "SELECT * FROM table Where t1='apple' ORDER by kind";
$result = mysql_query($sql,$dbd);
echo "<select size=\"1\" name=\"per\" onChange=\"parent.location.href = this.options[ this.selectedIndex].value; mes()\">";
echo "<option name=\"per\" value=\"\">Choose apple</option>";
while ($array = mysql_fetch_array($result)) {
echo "<option name=\"per\" value=\"http://apple.com/test.php?t2=".$array['mac']." \">".$array['mac']." || ".$array['kind']."</option>";
}
echo "</select>";
//

-~{}~ 29.09.05 12:45:

Автор оригинала: phpusershik
Фанат сказал функция тут не причём но все таки я попробовал он вроде бы выдает OK/ Cancel но все равно переходит при нажатии, наверно что то я не так делаю?
//
<script language=javascript>
function mes ()
{
return confirm("Do you want redirect?");
}
</script>
$sql = "SELECT * FROM table Where t1='apple' ORDER by kind";
$result = mysql_query($sql,$dbd);
echo "<select size=\"1\" name=\"per\" onChange=\"parent.location.href = this.options[ this.selectedIndex].value; mes()\">";
echo "<option name=\"per\" value=\"\">Choose apple</option>";
while ($array = mysql_fetch_array($result)) {
echo "<option name=\"per\" value=\"http://apple.com/test.php?t2=".$array['mac']." \">".$array['mac']." || ".$array['kind']."</option>";
}
echo "</select>";
//
----------------------------------------------------------------------------
echo "<select size=\"1\" name=\"per\" onChange=\"parent.location.href = this.options[ this.selectedIndex].value; return mes(); \";
Зделал так он все равно после нажатия 'Cancel' редиректится?
Вот как этот редирект повесит на JS?
 

confguru

ExAdmin
Команда форума
parent.location.href = this.options[ this.selectedIndex].value

должно быть внутри
mes(this)
 

svetasmirnova

маленький монстрик
Ага, только return mes() все забыли.

А так ему ссылку надо давать на что-то типа "Самые основы. Как работает JavaScript". Жаль не знаю где такое есть.
 

Фанат

oncle terrible
Команда форума
для начала ему надо забыть про пхп, и работать с ОДНИМ яваскриптом.
 

phpusershik

Using PHP
Автор оригинала: svetasmirnova
Ага, только return mes() все забыли.

А так ему ссылку надо давать на что-то типа "Самые основы. Как работает JavaScript". Жаль не знаю где такое есть.
Он все равно редиректится когда делаю вот так и при Cancel и при OK:

echo "<select size=\"1\" name=\"per\" onChange=\" return mes(parent.location.href = this.options[ this.selectedIndex].value); \";

:(
 

svetasmirnova

маленький монстрик
Правильно. Ну прочитай про JavaScript, да? Про объектную модель браузера, DOM.

Давай по пунктам разберём что ты делаешь:
1. parent.location.href = this.options[ this.selectedIndex].value
(редирект)
2. mes
(confirm)

Т.е. окошко конфирма у тебя *после* редиректа. Честно говоря удивительно почему confirm вообще появляется. Хотя нет, понятно: ты же меняешь location другого объекта.

Правильно сделать так: в тэге form на onsubmit определить действие (редирект), а на onclick вернуть результат работы mes. Или mes заменить функцией confirmedReirect, в которой ты сначала проверишь условие, а потом сделаешь редирект.
 

phpusershik

Using PHP
Автор оригинала: svetasmirnova
Правильно. Ну прочитай про JavaScript, да? Про объектную модель браузера, DOM.

Давай по пунктам разберём что ты делаешь:
1. parent.location.href = this.options[ this.selectedIndex].value
(редирект)
2. mes
(confirm)

Т.е. окошко конфирма у тебя *после* редиректа. Честно говоря удивительно почему confirm вообще появляется. Хотя нет, понятно: ты же меняешь location другого объекта.

Правильно сделать так: в тэге form на onsubmit определить действие (редирект), а на onclick вернуть результат работы mes. Или mes заменить функцией confirmedReirect, в которой ты сначала проверишь условие, а потом сделаешь редирект.
А на моем примере сможеш ли ты помочь мне?
echo "<form action=\"apple.com\" method=\"post\" onsubmit=\"return mis();\">";
Да формой Сабмит не хочется пользоватся я им пользовался ранше а вот сейчас хочу перейти без Сабмита.
 

svetasmirnova

маленький монстрик
вариант 2:
mes заменить функцией confirmedReirect, в которой ты сначала проверишь условие, а потом сделаешь редирект.
PHP:
if (confirm('?')) {
//do redirect
}
-~{}~ 29.09.05 15:58:

в теле функции
 

phpusershik

Using PHP
Автор оригинала: svetasmirnova
Или mes заменить функцией confirmedReirect, в которой ты сначала проверишь условие, а потом сделаешь редирект.
<script language=javascript>
function mes ()
{
confirm("Do you want go ?")
}
</script>
onChange=\"javascript: if (mes()) {parent.location.href = this.options[ this.selectedIndex].value;} \">
//

Но он ни в OK Cancel ни фига не хочет делать.
 

svetasmirnova

маленький монстрик
Ещё раз повторить:
>mes заменить функцией confirmedReirect,
И это что такое:
onChange=\"java script: if (mes(

Откуда ты mes вообще взял? Что за бред писать враппер вокруг конфирма?
 

phpusershik

Using PHP
Автор оригинала: svetasmirnova
вариант 2:

PHP:
if (confirm('?')) {
//do redirect
}
-~{}~ 29.09.05 15:58:

в теле функции
Зделал так тоже:
<script language=javascript>

function mes ()
{
if (confirm('Do you want to go?')) {

parent.location.href = this.options[ this.selectedIndex].value;
}
}
</script>

onChange=\" mes(); \"
не помогло ничего я постараюсь сделать старым методом с помощью form...

-~{}~ 29.09.05 16:29:

Автор оригинала: svetasmirnova
Ещё раз повторить:
>mes заменить функцией confirmedReirect,
И это что такое:
onChange=\"java script: if (mes(

Откуда ты mes вообще взял? Что за бред писать враппер вокруг конфирма?
Ты имееш ввиду так:
//
<script language=javascript>

function confirmedReirect ()
{
if (confirm('Do you want to go?')) {

parent.location.href = this.options[ this.selectedIndex].value;
}
}
</script>

onChange=\" confirmedReirect(); \"
//

-~{}~ 29.09.05 16:36:

УРААААААААААААААААААААА ! СПАСИБО БОЛЬШОЕ СВЕТА!
Я зделал так:

onChange=\" if (confirm('Do you want to go?')) {parent.location.href = this.options[ this.selectedIndex].value;}; \">";

И ОООООО :)))))
 
Сверху