Я создал простую систему тегов для моих школьных сайтов для студентов. Теперь система тегов работает отлично, теперь я также должен сохранять теги в таблице уведомлений с соответствующим идентификатором статьи, чтобы позже уведомлять учащихся о том, в какой статье они были помечены даже в том, что мне удалось сделать. Но теперь, если случайно вы захотите удалить теги, которые когда-либо реализуются при вводе статьи, вам не нужно тегировать этого человека, тогда первый тег put также обновляется в db.запрос mysql выполняется, хотя поля пустые
// Ajax код (attach.php)
<?php
include('config.php');
if(isset($_POST))
{
$u=$_POST['v'];
mysql_query("INSERT INTO `notify` (`not_e`) VALUES ('$u')");
}
?>
// tagsystem код
расслоение плотной<script type="text/javascript">
var id = '<?php echo $id ?>';
$(document).ready(function()
{
var start=/%/ig;
var word=/%(\w+)/ig;
$("#story").live("keyup",function()
{
var content=$(this).text();
var go= content.match(start);
var name= content.match(word);
var dataString = 'searchword='+ name;
if(go.length>0)
{
$("#msgbox").slideDown('show');
$("#display").slideUp('show');
$("#msgbox").html("Type the name of someone or something...");
if(name.length>0)
{
$.ajax({
type: "POST",
url: "boxsearch.php",
data: dataString,
cache: false,
success: function(html)
{
$("#msgbox").hide();
$("#display").html(html).show();
}
});
}
}
return false();
});
$(".addname").live("click",function()
{
var username=$(this).attr('title');
$.ajax({
type: "POST",
url: "attach.php",
data: {'v': username},
});
var old=$("#story").html();
var content=old.replace(word,"");
$("#story").html(content);
var E="<a class='blue' contenteditable='false' href='profile2.php?id="+username+"'>"+username+"</a>";
$("#story").append(E);
$("#display").hide();
$("#msgbox").hide();
$("#story").focus();
});
});
</script>
гм, вопрос является 'MySQL запрос выполняется, даже если поля пусты' правильно? так что это потому, что 'attach.php' запускается каждый раз, когда вы нажимаете' .addname'; поэтому просто проверьте скрипт 'if ($ _ POST ['v'])' и в javascript: 'if (username)'; btw, если u r будет использовать 'mysql_query', используйте' mysql_real_escape_string' для вашей безопасности! 'mysql_query (" INSERT INTO notify (not_e) VALUES (.mysql_real_escape_string ($ u).) ");' – DaunnC
Я проверил, что все та же проблема возникает – user2819237
Можете ли вы отправить сообщение «var_dump ($ _ POST)» после отправки запроса? поэтому в теории код: 'if (isset ($ _ POST) && isset ($ _ POST ['v']) && $ _POST ['v'])' должен решить вашу проблему. – DaunnC