2015-03-26 2 views
0

Я пытаюсь считать обратное от 10 на submit. Вот ближайший я могу добраться до того, что хочу, но он все равно возвращает ошибку.php: Минус один на submit

if (isset($_POST['submit'])) {  
$curentvalue = 10; 
$add = function ($valueToAdd) { 
$currentValue += $valueToAdd; 
getElementById('number') = $currentValue; 
    } 
} 

форма выглядит следующим образом (извините за беспорядок):

<form action="main.php" method="post" target="_top"> 
<table id="Table1"> 
<tr><th>Tickets Left</th></tr> 
<tr><td><span id="number">10</span></td></tr> 
<tr><td><input class="submit" type="submit" name="submit" value="Submit" /></td></tr> 
</table> 
</form> 

Благодаря

+0

Plz вывесить ошибку вы получите. Я подозреваю, что он должен делать w/'$ currentValue' не доступным для вашей анонимной функции, которая может быть решена как функция function ($ valueToAdd) use ($ currentValue)'. – mopo922

+0

Вы не можете получить доступ к функции getElementById следующим образом: http://php.net/manual/de/domdocument.getelementbyid.php – Markai

+0

Мне кажется, что php и javascript здесь смешиваются. – arkascha

ответ

0

Этот код является своего рода сочетание JavaScript и PHP. Это не сработает.

EDIT: Хорошо .. например:

PHP

session_start(); 

if (!isset($_SESSION['value']) { 
    $_SESSION['value'] = 10; 
} 

if (isset($_POST['submit']) && $_SESSION['value'] > 0) {  
    $_SESSION['value']--; 
} 

HTML

<form action="main.php" method="post" target="_top"> 
<table id="Table1"> 
<tr><th>Tickets Left</th></tr> 
<tr><td><span id="number"><?php echo $_SESSION['value']; ?></span></td></tr> 
<tr><td><input class="submit" type="submit" name="submit" value="Submit" /></td></tr> 
</table> 
</form> 
+0

Или я что-то упускаю? :) –

+1

Вы правы, но этот ответ не очень полезен. Может быть, предложите альтернативу? – mopo922

+1

Это не ответ. Это должен был быть комментарий. Я предлагаю вам удалить этот «ответ», Дэвид. – arkascha

0

Я хотел бы предложить, вы передать значение вашего main.php, когда вам отправьте форму. Это сравнительно легко понять, и каждый пользователь может отсчитывать сам по себе

PHP часть:

$num = (isset($_REQUEST['curNum']) ? $_REQUEST['curNum'] : 10); 

и затем в форму

<form action="main.php?curNum=<?php echo ($num-1); ?>" method="post" target="_top"> 
    <table id="Table1"> 
     <tr><th>Tickets Left</th></tr> 
     <tr><td><span id="number"><?php echo $num; ?></span></td></tr> 
     <tr><td><input class="submit" type="submit" name="submit" value="Submit" /></td></tr> 
    </table> 
</form> 
Смежные вопросы