Цитата (Valick @ 3.02.2014 - 21:11) |
вот этого$MaxQuestionId = $MaxQuestionId['id'] + 1; быть не должно это "бомба замедленного действия" __ в целом код полная каша вам необходимо учиться работать с функциями, инклудами и структурировать код начните например с функции генерации формы на входе она должна получать массив переменных, а на выходе должен быть html код, который можно записать в переменную и вывести в определенном месте страницы. |
Цитата (mvg @ 4.02.2014 - 12:14) |
jQuery.validation подойдет? |
<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.8/jquery.validate.js"></script>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.8/localization/messages_ru.js" ></script>
<script type="text/javascript" src="http://jquery/myscripts.js" ></script>
<form method="post" action="/admin/add.php" id="checkForm">
<?php
/**
* get max question id from questions table
*/
$maxQuestionIdQuery = mysql_query("SELECT max(id) id FROM voprosu");
$MaxQuestionId = mysql_fetch_assoc($maxQuestionIdQuery);
if (!empty($MaxQuestionId['id'])) {
$MaxQuestionId = $MaxQuestionId['id'] + 1;
} else {
$MaxQuestionId = 1;
}
?>
<!--
this field send hidden question id to db -> answers table
-->
<input type="hidden" name="lastAnswerId" value="<?php echo $MaxQuestionId; ?>">
<!--
this field send questions to db -> question table
-->
<div id="question"><input class="input-xxlarge" type="text" name="question" value=""/>
<?php
if (!empty($_SESSION['questionMistake'])) {
echo '<p style="margin-left:70%; margin-top:-35px; color:red">' . ($_SESSION['questionMistake']) . '</p>';
unset($_SESSION['questionMistake']);
}
?>
</div>
<div id="createAnswer">
<ul id="sites">
<!--
this field send answers to db -> answers table
-->
<li class="answerButton">
<input type="button" class="btn btn-lg btn-primary" name="answer[]" id="add" value="Добавить ответ">
</li>
</ul>
</div>
<?php
$lastAnswerIdQuery = mysql_query("SELECT id FROM otvetu ORDER BY id DESC LIMIT 1");
$lastAnswerId = mysql_fetch_assoc($lastAnswerIdQuery);
if (empty($lastAnswerId)) {
$lastId = 0;
} else {
$lastId = $lastAnswerId['id'];
}
?>
<input type="hidden" id="lastId" name="posledniy" value="<?php echo $lastId ?>">
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
var lastId = $('#lastId').val() * 1;
$('#add').click(function()
{
lastId = lastId + 1;
console.log(lastId)
var str = '<li class="answerInput">';
str += '<input type="text" name="answer[]" value=""> ';
str += '<input type="button" value="remove" class = "remove" > ';
str += '<input type="radio" name="correctAnswerId" value="' + lastId + '">';
str += '</li>';
$('#sites').append(str);
});
$('body').on('click', '.remove', function()
{
$(this).parent('li').remove();
});
});
</script>
<?php echo '<p >' . ($_SESSION['answerMistake']) . '</p>';
unset($_SESSION['answerMistake']);
?>
<div class="createSubmit"> <input type="submit" class= "btn btn-lg btn-success" /></div>
</form>
$(document).ready(function(){
$("#checkForm").validate({
rules:{
answer:{
required: true,
minlength: 4,
maxlength: 50
},
question:{
required: true,
minlength: 4,
maxlength: 50
}
},
messages:{
answer:{
required: "Это поле обязательно для заполнения",
minlength: "Это поле обязательно для заполнения",
maxlength: "Это поле обязательно для заполнения"
},
question:{
required: "Это поле обязательно для заполнения",
minlength: "Это поле обязательно для заполнения",
maxlength: "Это поле обязательно для заполнения"
}
}
});
});