Проще говоря, у меня есть эта переменная, которая содержит гиперссылку:
$test3 = '<a href="#" onclick="archiveMove(\''.$mulmov.'\'); return false;">Move to Quotes</a>';
и мне нужно выполнить эту переменную внутри регистра переключателя, как показано ниже:
switch ($_POST['dropdown']) {
case "Select Folder":
echo "Please select";
break;
case "One":
exec($test3); <-- //here i want to run (if this is not execute, my misunderstanding) the link.
break;
case "Two":
header('Location: http://www.facebook.com/'); <-- //this is just a test
break;
default:
echo "<br></br>";
echo "Move multiple files:";
echo "<br></br>";
}
?>
<form method="post" name="theform" action="">
<select name="dropdown">
<option value="Move to Folder">Select</option>
<option value="One">One</option>
<option value="Two">Two</option>
</select>
<input type="submit" value="Move"/>
</form>
Я бы хотел знать, как выполнить ссылку ahref, не нажимая на нее пользователя, а просто установить эту ссылку как случай, и когда пользователь отправляет форму, выбранный случай воздействует на гиперссылку.
Любая помощь приветствуется.
ПОДРОБНЕЕ
Я понимаю, что javascript и php являются отдельными языками, и что лучшим вариантом будет использование Ajax, но мое понимание Ajax ограничено.
Чтобы объяснить это лучше, это то, что происходит в целом:
1) У меня есть почтовый ящик с подборкой сообщений.
2) Вы можете проверить эти сообщения и затем щелкнуть ссылку «Выбранная корзина», которая удаляет выбранные сообщения. Это ссылка:
<a href="#" onclick="deleteInbox(\''.$muldel.'\'); return false;">Trash Selected</a>
Функция javascript выполняет функцию php в $ muldel для всех выбранных сообщений и обновляет базу данных.
Это рассматриваемая функция javascript:
function inboxDelete(url) {
document.messages.action = url;
document.messages.submit();
}
archiveMove () точно такой же, только временно дублируется, чтобы прояснить ситуацию.
3) Теперь я повторно использовал код ahref для выполнения той же процедуры, но на этот раз для перемещения выбранных сообщений в папки.
4) Эти папки могут быть выбраны из выпадающего списка - здесь форма входит.
5) Так что, хотя я могу заставить его работать, добавив такую ссылку:
$test3 = '<a href="#" onclick="archiveMove(\''.$mulmov.'\'); return false;">Move to Quotes</a>';
echo $test3;
6) Теперь мне нужно, чтобы это работало так же, но ссылка меняется в зависимости от того, какая папка выбрана.
Это в полной мере относится к моей проблеме, надеюсь, это станет более понятным.
Я знаю, что вы можете отправлять переменные в javscript, используя GET или POST, а затем выполнять функцию полностью через javascript. Я пробовал что-то вроде ниже, но безрезультатно:
<form method=post name="myform" action="<?php echo $PHP_SELF;?>">
<input type="hidden" name="formVar" value="">
<input type="text" value="Enter Text Here" name="myText">
<input type="text" value="Enter Text Here" name="myText2">
<input type="submit" value="Send form!" onClick="readmove()">
</form>
<?php
// Retrieve the hidden form variable (using PHP).
$myvar = $_POST['formVar'];
if ($myvar == "$mulmov"){
echo $mulmov;
}
?>
<script language="JavaScript">
<!--
function setText(){
document.myform.myText.value = document.myform.myText.value.toUpperCase();
}
function readmove(){
document.myform.myText.value = "<?php echo $myvar; ?>" ;
readmove2();
}
function readmove2(){
if (document.myform.myText.value == "$mulmov"){
document.myform.myText2.value = "<?php echo $mulmov; ?>" ;
<?php exec ('archiveMove(\''.$mulmov.'\'); return false;'); ?>
} else if (document.myform.myText.value == "$mulmov2"){
document.myform.myText2.value = "<?php echo $mulmov2; ?>" ;
}
}
</script>