|
|
|
| Добрый день!
На странице выводится окно для ввода комментария.
Как сделать, если комментов пока нет, чтобы выводилась кнопка "Оставить комментарий" и при нажатии ее выходило окно для ввода коммента
<div class="corner25">
<h5>Комментарии:</h5>
<div id='cerror'></div>
<form action="#" method="POST" enctype="multipart/form-data" name="addcom" id="addcom" onSubmit="return false" class="sendform">
<input class="comment_name" type="text" name="author" id="author"> Ваше имя
<div class="corner20"><textarea name="text"></textarea></div>
<input name="id" type="hidden" value="<?php echo $id; ?>">
<input type='hidden' name='advertisment' value='<?php echo $myrow['title']; ?>'>
<input class="button-small" name="button" type="button" value='Отправить' onclick="doLoad(document.getElementById('addcom'))">
</form>
<div id='resultid'></div>
<!--вывод комментариев -->
<?php
$result = mysql_query("SELECT * FROM comment_cat WHERE post='" . mysql_real_escape_string($id) . "' ORDER BY date DESC, id", $db);
if(mysql_num_rows($result) > 0)
{
$comment = mysql_fetch_array($result);
do
{
$text = $comment["text"];
$author = $comment["author"];
$date = $comment["date"];
printf("<div class='comment-content2'>
<h6>%s</h6>
<p>%s</p>
<p>%s</p>
</div>
",$author,$date,$text);
}
while ($comment = mysql_fetch_array($result));
}
|
| |
|
|
|
|
|
|
|
для: liberty
(14.02.2013 в 09:22)
| | с помощю JavaScript | |
|
|
|
|
|
|
|
для: liberty
(14.02.2013 в 09:22)
| |
<script type="text/javascript">
$(document).ready(function(){
$('#sendcomm').click(function(e){
$('.form').fadeIn(750)
})
})
</script>
<div class="corner25">
<h5>Комментарии:</h5>
<div id='cerror'></div>
<button id="sendcomm">Оставить комментарий</button>
<div class='form' style='display:none;'>
<form action="#" method="POST" enctype="multipart/form-data" name="addcom" id="addcom" onSubmit="return false" class="sendform">
<input class="comment_name" type="text" name="author" id="author"> Ваше имя
<div class="corner20"><textarea name="text"></textarea></div>
<input name="id" type="hidden" value="<?php echo $id; ?>">
<input type='hidden' name='advertisment' value='<?php echo $myrow['title']; ?>'>
<input class="button-small" name="button" type="button" value='Отправить' onclick="doLoad(document.getElementById('addcom'))">
</form>
</div>
<div id='resultid'></div>
<!--вывод комментариев -->
<?php
$result = mysql_query("SELECT * FROM comment_cat WHERE post='" . mysql_real_escape_string($id) . "' ORDER BY date DESC, id", $db);
if(mysql_num_rows($result) > 0)
{
while ($comment = mysql_fetch_assoc($result)){
// тут формируйте вывод комментариев
$text = $comment["text"];
$author = $comment["author"];
$date = $comment["date"];
echo "<div class='comment-content2'>
<h6>".$text."</h6>
<p>".$author."</p>
<p>".$date."</p>
</div>";
}
}
else{
echo "Ваш комментарий будет первым)))";
}
|
немножко подправил Ваш код, не забудьте подключить библиотеку jquery в <head> страницы
правда не проверял как работает, проверьте сами и отпишите | |
|
|
|
|
|
|
|
для: Slo_Nik
(14.02.2013 в 13:51)
| | И форма выводится
и "Ваш комментарий будет первым" тоже. | |
|
|
|
|
|
|
|
для: liberty
(15.02.2013 в 06:34)
| | >Как сделать, если комментов пока нет, чтобы выводилась кнопка "Оставить комментарий"
А если уже есть комментарии, то табу, нельзя добавлять и форма не доступна? | |
|
|
|
|
|
|
|
для: liberty
(15.02.2013 в 06:34)
| | комментарий добавили, "Ваш комментарий будет первым" выводится? | |
|
|
|
|
|
|
|
для: Slo_Nik
(15.02.2013 в 12:15)
| | выводится и окно для ввода комменатриев,
и сообщение под ним - Ваш комментарий будет первым)))
<?php
$result = mysql_query("SELECT * FROM comment_school WHERE post='" . mysql_real_escape_string($id_school) . "' ORDER BY date DESC, id", $db);
if(mysql_num_rows($result) > 0)
{
while ($comment = mysql_fetch_assoc($result)){
// тут формируйте вывод комментариев
$text = $comment["text"];
$author = $comment["author"];
$date = $comment["date"];
echo "<div class='comment-content2'>
<h6>".$author."</h6>
<p>".$date."</p>
<p>".$text."</p>
</div>";
}
}
else{
echo "Ваш комментарий будет первым)))";
}
|
Если комментов нет, то нужно вывести только "Ваш комментарий будет первым" | |
|
|
|
|
|
|
|
для: liberty
(23.02.2013 в 10:31)
| | >>>выводится и окно для ввода комменатриев,
>>>и сообщение под ним - Ваш комментарий будет первым)))
>>>Если комментов нет, то нужно вывести только "Ваш комментарий будет первым"
А кнопку "добавить комментарий" не надо выводить, если нет комментариев?
и если $id_school это цифра, то может правильней будет intval($id_school) ? | |
|
|
|
|
|
|
|
для: Slo_Nik
(23.02.2013 в 11:37)
| | если нет комментариев то кнопку "добавить комментарий"надо выводить | |
|
|
|
|
|
|
|
для: liberty
(23.02.2013 в 18:22)
| | всё правильно, нет комментариев - выводится форма ввода комментария и "ваш комментарий будет первым"
будут комментарии - будет выводится только форма ввода текста комментария
для начала проверьте, что Вы передаёте в запрос
<?php
$query = "SELECT * FROM comment_school WHERE post='" . intval($id_school) . "' ORDER BY date DESC, id";
echo $query; // смотрите на сам запрос
$result = mysql_query($query, $db); // выполняете запрос
?>
|
| |
|
|
|
|
|
|
|
для: Slo_Nik
(23.02.2013 в 20:22)
| | я не правиильно выразил видимо свою мысль.
мне нало:
1. если нет комментов - выводится кнопка "Оставить комментарий", нажимая на которую выходит окно для ввода коммента.
2. если комменты уже есть - то выводится все комменты и окно для ввода | |
|
|
|
|
|
|
|
для: liberty
(23.02.2013 в 21:01)
| | а смысл?
Если нет комментариев, то выводится кнопка, а если есть, то полностью окно. Зачем?
не проще ли выводить комментарии, а под ними форму? Нет комментариев, то надпись "
ваш комментарий..." и форму
ну если так это принципиально, то стиль для окна надо определять там же, где Вы определяете, что выводить, или коммментарии(если есть) или надпись "ваш комментарий...." | |
|
|
|
|
|
|
|
для: liberty
(23.02.2013 в 21:01)
| | попробуйте вот так, не идеально, на скорую руку
<script type="text/javascript">
$(document).ready(function(){
var commEnt = $(".comment-content2")
if(commEnt){
$('#sendcomm').css({'display':'none'})
$('.form').css({'display':'block'})
}
$('#sendcomm').click(function(e){
$('.form').fadeIn(750)
})
})
</script>
|
| |
|
|
|