<form action="<?php if(isset($redirect)&& $redirect == "f"){echo "#";} else{ ?>add_new_item2.php?user_id=<?php echo $_GET['user_id']; }?>" method="post"> //no need to expose this area here <input type="submit" value="submit" name="submit" /> </form> //the processor <?php if(isset($_POST['submit'])) { $redirect = "f"; if(whatever) { //the if condition comes here } else //all if conditions are satisfied { $redirect = "t"; } }
То, что я хочу сделать, просто в форме action, я хочу, чтобы действие было action = "#", если условия if еще не выполнены, и если они будут выполнены, действие будет action = "add_new_item2.php? User_id = 123"
попробуй это
<?php $action = ''; if(isset($redirect) && $redirect == "f") { $action = "#"; } else { $action = "add_new_item2.php?user_id=".$_GET['user_id']; } ?> <form action="<?php echo $action; ?>" method="post">
Вы делаете условие перед использованием …
<?php $action = ''; if(isset($redirect) && $redirect == "f") { $action = "#"; } else { $action = "add_new_item2.php?user_id=".$_GET['user_id']; } ?> <form action="<?php echo $action; ?>" method="post">
Если значение перенаправления уже установлено. Используйте $_SERVER['PHP_SELF']
чтобы выполнить действие на текущей странице.
Проверьте кавычки $redirect == "f"
. Это должны быть одинарные кавычки или сбежать должным образом.
<form name="form1" method="post" action="<?php if(isset($redirect)&& $redirect == 'f'){echo $_SERVER['PHP_SELF'];} else{ echo 'add_new_item2.php?user_id='.$_GET['user_id']; } ?>" >
Попробуйте поставить одинарные кавычки до и после двойных кавычек. Совпадает с этим:
<input type=label name=\"Description1\" value='". $T_Description. "' style=\"width:650px; margin-left:50px; padding: 5px;\" \>
(value = '" x "') Надеюсь, это поможет …