Smarty $ smarty.post не работает, даже все зарезервированные переменные, в которые он работает, включают .get и т. Д.

Как я могу использовать это

<input name="name" type="input" value="<?php echo @$_POST['name'] ?>" />

В умном движке.

Я попробовал зарезервированную переменную

{$smarty.post.name}

Но это дает ошибку undefined variable и мое умное имя объекта класса $Smarty,

Вот моя форма

<form method="post">
{if strpos($SessionMessage, "Success") === FALSE}
<h4 style="margin-top:10px">Post Your Comment:</h4>
{$Message}

<div class="form-group">
<label>Name:</label>
<input type="text" class="form-control" name="name" value="{if isset($smarty.post.name)}{$smarty.post.name}{/if}" placeholder="ext: Jon doe" />
</div>
<div class="form-group">
<label>Comment:</label>
<textarea cols="5" rows="5" class="form-control" name="comment" value="{if isset($smarty.post.comment)}{$smarty.post.comment}{/if}" placeholder="comments"></textarea>
</div>
<div class="form-group">
<input type="submit" class="btn btn-success" value="Submit" name="submit" />
</div>
{else}
{$Message}
{/if}
</form>

Это мой код PHP

if(isset($_POST['submit'])) {
$Name = trim($_POST['name']);
$Body = trim($_POST['comment']);

if(!empty($Body)) {
$Comment = Comment::Make($Photo->id,$Name,$Body);
if (is_object($Comment)) {
if($Comment->Create()) {
$Comment->SendNotification();
$Session->MSG("Success: Comment is submit, awaiting for approval");
RedirectTo("photo.php?id={$Photo->id}");
} else {
$Session->MSG("Danger: Something is Wrong");
RedirectTo("photo.php?id={$Photo->id}");
}
} else {
$Session->MSG("Danger: Something is Wrong");
RedirectTo("photo.php?id={$Photo->id}");
}
}else{
$Session->MSG("Danger: Comment is empty");
RedirectTo("photo.php?id={$Photo->id}");
}
}

Это моя форма, связанная с кодом, вы можете проверить это, если я что-то не так делаю, так что, пожалуйста, дайте мне знать. на самом деле умный. получить это работает нормально, но .post это не работает.

0

Решение

После добавления формы и кода PHP проблема кажется очевидной: вы добавляете перенаправление, которое не передает POST данные.

Вы должны отправить свою форму photo.php?id={$Photo->id} и обработать это там, без какого-либо перенаправления.

2

Другие решения

Переменная {$ smarty.post.name} должна работать, но вы должны добавить функцию isset.

value="{if isset($smarty.post.name)}{$smarty.post.name}{/if}"
1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector