Проблемы ОБНОВЛЕНИЯ - отправка, а не обновление

Извините за беспорядок! Приведенный ниже код в основном вставляет текст в таблицу, затем я могу редактировать текст, который показывает вставленный текст в текстовой области в качестве значения. Проблема в том, что когда я пытаюсь обновить контент, он публикует новый контент, а не обновляет, поэтому у меня есть 2 поста.

Кажется, что беспокоящие запросы противоречат друг другу. Я пытался отделить их с помощью (if($_GET== ect }else{) но все еще делаю то же самое. Все отлично работает, кроме не обновления.

Есть идеи

 <?php
session_start();
include("header.php");
include("connect_db.php");

function protect($string)
{    
$string = mysql_real_escape_string($string);    $string =     strip_tags($string);   
$string = addslashes($string);     return $string;
}

echo"
<style>
fieldset {

font-size:30px; 
font-family:calibri;
border-radius: 10px;
padding: 5px;
width:220px;

}
textarea#user {

border: 2px solid #C0DFFF;
border-radius: 10px;
height: 475px;
width: 850px;
    outline: none;
    resize: none;
    padding-left:15px;
    padding-right:15px;
    padding-top:10px;
    padding-bottom:10px;
    font-family: calibri;  
    font-size: 22px; 
}
</style>

<table width='100%' border='0' height='80%'>
<tr>
<td width='25%' valign='top'>

";

include("user_sidebar.php");
echo"

</td>
<td width='75%' valign='top'>

</br>

";

if($_GET['cmd']=='edit')
{
if(!$_POST['submit'])
    { 
$result = mysql_query("SELECT * FROM user_blogs WHERE     username='$username' AND id='$content_id'");

while($row = mysql_fetch_array($result))
        {



echo"


<form method='POST' action='".htmlspecialchars($_SERVER["PHP_SELF"])."'>
<table border='0'><tr><td>

<input id='user_form' type='text' name='title' value='".$row['title']."'>

</td></tr>
<tr><td>

<textarea id='user' name='content'>".$row['content']."</textarea>
</td></tr>
<tr><td align='right'>
<input id='submit'  type='submit' name='submit'  value='post'>
</td></tr></table>
</form>";

        }



    }
else
    {    
           $title = $_POST['title'];   
           $content = $_POST['content'];   
           $username = $_SESSION['username']; 
           $errors = array(); 

echo"



<form method='POST' action='".htmlspecialchars($_SERVER["PHP_SELF"])."'>
<table border='0'><tr><td>
";
if(!$title){     
$errors[] = "1";       
echo "<input id='user_form' type='text' name='title'><span    class='Euser'><i> name your blog</i></span>";        }  else { echo "<input   id='user_form' type='text' name='title' value='".$title."'>"; }

echo"
</td></tr>
<tr><td>
";



if(!$content){     
$errors[] = "1";       
echo "<textarea id='user' name='content'>your blog must be at least 20 characters</textarea>";
 }  else { echo "
<textarea id='user' name='content'>".$content."</textarea>"; }
echo"
</td></tr>
<tr><td align='right'>
<input id='submit'  type='submit' name='submit' value='post'>
</td></tr></table>
</form>";


if(count($errors) > 0){            
 echo"<span class='submit_error'>you have not completed your blog</span>";
}elseif($content=='your blog must be at least 20 characters'){ echo 
"<span class='submit_error'>you have not entered any content</span>";
}else {
$content_id=$_GET['content_id'];
$username=$_SESSION['username'];
$sql2 = 'UPDATE user_blogs SET title="$title" AND content="$content" WHERE id="$content_id" AND username="$username"';       
$res2 = mysql_query($sql2) or die(mysql_error());           

echo"<span class='submit_successful'><b><i>".$title."</i></b> has been     updated successfully</span>";}


    }

}
else
{





if(!$_POST['submit'])
    {  
echo"


<form method='POST' action='".htmlspecialchars($_SERVER["PHP_SELF"])."'>
<table border='0'><tr><td>

<input id='user_form' type='text' name='title'>

</td></tr>
<tr><td>

<textarea id='user' name='content'></textarea>
</td></tr>
<tr><td align='right'>
<input id='submit'  type='submit' name='submit'  value='post'>
</td></tr></table>
</form>

";

    }
else
    {    
           $title = $_POST['title'];   
           $content = $_POST['content'];   
           $username = $_SESSION['username']; 
           $errors = array(); 

echo"



 <form method='POST' action='".htmlspecialchars($_SERVER["PHP_SELF"])."'>
<table border='0'><tr><td>
";
if(!$title){     
$errors[] = "1";       
echo "<input id='user_form' type='text' name='title'><span    class='Euser'><i> name your blog</i></span>";        }  else { echo "<input id='user_form' type='text' name='title' value='".$title."'>"; }

 echo"
 </td></tr>
<tr><td>
";



if(!$content){     
$errors[] = "1";       
echo "<textarea id='user' name='content'>your blog must be at least 20    characters</textarea>";
}  else { echo "
<textarea id='user' name='content'>".$content."</textarea>"; }
echo"
</td></tr>
<tr><td align='right'>
<input id='submit'  type='submit' name='submit' value='post'>
</td></tr></table>
</form>";


if(count($errors) > 0){            
 echo"<span class='submit_error'>you have not completed your blog</span>";
}elseif($content=='your blog must be at least 20 characters'){ echo 
"<span class='submit_error'>you have not entered any content</span>";
}else {

$sql2 = "INSERT INTO `user_blogs`   (`title`,`content`,`username`,`date`,`time`)                    
VALUES ('".$title."','".$content."','".$username."', NOW(), UTC_TIMESTAMP())";            
$res2 = mysql_query($sql2) or die(mysql_error());           

echo"<span class='submit_successful'><b><i>".$title."</i></b> has been posted successfully</span>";}

    }

}


echo"
</td>
 </tr>
 </table>";

include("footer.php"); ?>

1 ответ

Можете ли вы проверить, что вы получили правильное значение в переменной $content_id, Если вы все правильно поняли, то вам нужно взять одно скрытое поле ввода, в которое вы должны поместить $content_id как ценность.

Так что вы можете получить значение $content_id эта переменная в данные поста.

Другие вопросы по тегам