Vaidzīga palīdzība. Taisot tādu kā admina paneli, radās problēma.

Pievienojot rakstu, garumzīmes strādā. Bet labojot rakstu, garumzīmes nestrādā.  

Piemēram pievienojot rakstu,  man tur ir teksts - Man garšo āboli.  Kad izlabo kautko un tad saglabā tas viss izskatās šitā - Man garÅ¡o Äboli.

Visi faili ir UTF-8 Kodējumā bez BOM
Tātad šis ir pirmais fails. Kur pievienoju rakstu. (https://coding.lv/read/php-mysql-jaunumi)

<?php

require_once('class.mdb.php');

require_once('news-config.php');

//izveido savienojumu ar datubāzi
$db = new mdb($db_user, $db_pswd, $db_base, $db_host);

$tittle = '';
$content = '';
$status = '';

//ja tie padots ?edit=X parametrs, ielasam raksta saturu labošanai
if(isset($_GET['edit'])) {

$id = (int)$_GET['edit'];

//parbaudam vai tāds raksts eksistē
$article = $db->get_row("SELECT * FROM `news` WHERE `id` = '$id'");

//raksts nav atrasts
if(empty($article)) {
$status = '<p class="error">Pieprasītais raksts neeksistē!</p>';

//pieprasīts dzēst rakstu
} elseif(isset($_GET['delete'])) {
$db->query("DELETE FROM `news` WHERE `id` = '$id'");
$status = '<p class="success">Raksts izdzēsts!</p>';

} else {

//ja pieprasījums nāk no formas submit pogas,
if(isset($_POST['tittle'])) {

$tittle = htmlspecialchars($_POST['tittle']);
$content = $_POST['content'];

//sagatavojam datus rakstīšanai db
$title_escaped = $db->escape($tittle);
$content_escaped = $db->escape($content);

//izmaina ierakstu datubāzē
$db->query("UPDATE `news` SET `tittle` => '$title_escaped', `content` => '$content_escaped', `modified` => NOW() WHERE `id` => '$id'");
$status = '<p class="success">Izmaiņas saglabātas!</p>';

//nav nospiests submit, vienkārši rādam šī raksta saturu formā
} else {
$tittle = htmlspecialchars($article->tittle);
$content = $article->content;
}

}

//jauna raksta veidošana
} elseif(isset($_POST['tittle'])) {

//sagatavojam datus rakstīšanai db
$title_escaped = $db->escape(htmlspecialchars($_POST['tittle']));
$content_escaped = $db->escape($_POST['content']);

//izveido jaunu ierakstu datubāzē
$db->query("INSERT INTO `news` (`tittle`, `content`, `created`, `modified`) VALUES ('$title_escaped', '$content_escaped', NOW(), NOW())");
$status = '<p class="success">Izveidots jauns raksts!</p>';
}

 


?>

<form class="form" action="news" method="post">
<font size="5">
Virsraksts:<br />

<input size="90" type="text" name="tittle" id="tittle" value="<?php echo $tittle; ?>" />
</br>
Raksta saturs:<br /></font>
<textarea name="content"><?php echo htmlspecialchars($content); ?></textarea>

<input onclick="myFunction()" class="button" type="submit" value="Saglabāt" />

</form>
</br>

Visi raksti: </br>
<?php
//saraksts ar jau esošajiem rakstiem
$news = $db->get_results("SELECT * FROM `news` ORDER BY `created` DESC");
if(!empty($news)) {
foreach($news as $article) {
echo '<div id="newslist">';
echo '<strong><a style="color:black" href=newsread?id='.$article->id.'>'.$article->tittle.'</a></strong>';
echo '</div>';
}
}
?>

 

Otrais fails, kur var labot pievienoto rakstu. 

<?php

require_once('class.mdb.php');
require_once('news-config.php');


$db = new mdb($db_user, $db_pswd, $db_base, $db_host);

?>

<?php
$id=$_POST['id'];
$tittle=$_POST['tittle'];
$content=$_POST['content'];
$id=$_POST['id'];
$id=$_GET['id'];
//saraksts ar rakstiem
$news = $db->get_results("SELECT * FROM `news` WHERE id='$id'");
if(!empty($news)) {

foreach($news as $article) {

//datuma formāts, maināms ar https://php.net/manual/en/function.date.php norādītajiem parametriem
$article->created = date('Y.m.d H:i', strtotime($article->created));

 

echo ' <center><form accept-charset="utf-8" name="form1" method="post" action="update_ac?id=' .$article->id. '">
<input class="update" size="70" name="tittle" type="text" id="name" value="' . $article->tittle . '">
</br>
<textarea name="content"> ' .$article->content. '</textarea>
<input name="id" type="hidden" id="id" value="' .$article->id. '">
<input type="submit" name="Submit" value="Saglabāt">
</center>
</form>
';}}
?>

 un trešais fails, kur notiek update datubāzē. 

<?php $host="localhost"; // Host name

$username="root"; // Mysql username

$password=""; // Mysql password

$db_name=""; // Database name

$tbl_name="news"; // Table name

$id=$_POST['id'];

$tittle=$_POST['tittle'];

$content=$_POST['content'];

// Connect to server and select database.

mysql_connect("$host", "$username", "$password")or die("cannot connect");

mysql_select_db("$db_name")or die("cannot select DB");

echo '<meta charset="utf8" />' ;

$sql="UPDATE $tbl_name SET tittle='$tittle', content='$content' WHERE id='$id'";

 

$result=mysql_query($sql);

if($result){ ?>

<meta http-equiv="refresh" content="0;url=editnews?id=<?php echo "$id" ; ?>" />

<?php

}

else

{ echo "ERROR";

}

?>

 

 

Laboja Fukzzs, labots 1x