Ben nasıl PHP ve MySQL kullanarak benim iki veritabanı tabloları güncelleyebilirsiniz merak ediyorum? Ben denilen ikinci bir tablo eklemek istediğiniz tags_2 bu etiket zaten var olmadığını kontrol edecek ve bu tabloda mevcut saymak eklemek ve etiket yoksa tabloya eklemek yoksa.
Ben doğru açıkladı umut?
Temelde bu nedense bütün gün beni şaşkına olan doğru yerlerde doğru kodu ekleyerek yardıma mı ihtiyacınız var? Ben çalışmak için ilk tablo var ama ikinci değil?
İşte aşağıda benim MySQL tablo olduğunu.
CREATE TABLE tags (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
page TEXT NOT NULL,
tag VARCHAR(255) NOT NULL,
count INT NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE tags_2 (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
tag VARCHAR(255) NOT NULL,
count INT NOT NULL,
PRIMARY KEY (id)
);
Ve İşte aşağıda benim PHP betik.
<?php
require_once ('./mysqli_connect.php');
if (isset($_POST['submitted'])){
$mysqli = new mysqli("localhost", "root", "", "sitename");
$dbc = mysqli_query($mysqli,"SELECT * FROM tags");
if (!$dbc) {
print mysqli_error($mysqli);
}
$page = $_SERVER['SCRIPT_FILENAME'];
$tag = mysqli_real_escape_string($mysqli, $_POST['tag']);
$mysqli = new mysqli("localhost", "root", "", "sitename");
$dbc = mysqli_query($mysqli,"SELECT id, count, page FROM tags WHERE tag='$tag' AND page = '$page'");
if(mysqli_num_rows($dbc)){
$tag_info = mysqli_fetch_array($dbc);
$tag_info_id = $tag_info["id"];
$tag_info_count = $tag_info["count"] + 1;
$mysqli = new mysqli("localhost", "root", "", "sitename");
$dbc = mysqli_query($mysqli,"UPDATE tags SET count='$tag_info_count' WHERE id='$tag_info_id'");
echo "$tag now with $tag_info_count instances";
} else {
$mysqli = new mysqli("localhost", "root", "", "sitename");
$clean_url = mysqli_real_escape_string($mysqli, $page);
$dbc = mysqli_query($mysqli,"INSERT INTO tags (tag, count, page) VALUES ('$tag', 1, '$clean_url')");
if (!$dbc) {
print mysqli_error($mysqli);
}
echo "1 record added";
}
mysqli_close($mysqli);
}
?>
Tabloları bu şekilde daha iyi görünecektir.
CREATE TABLE tags (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
page TEXT NOT NULL,
tag VARCHAR(255) NOT NULL,
count INT NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE tags_2 (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
tag_id INT UNSIGNED NOT NULL DEFAULT 0,
tag VARCHAR(255) NOT NULL,
count INT NOT NULL,
PRIMARY KEY (id)
);