Uko ndani ya app. Fungua kwenye browser kwa muonekano na downloads bora.
August 31, 2026 1 min read

Jinsi ya Kuzuia Posts Kufutika Zenyewe Kwenye PHP na MySQL

Posts kupungua kila unapofungua au ku-refresh page kunaweza kusababishwa na foreign key yenye ON DELETE CASCADE. User akifutwa, posts zake zote zinaweza kufutwa moja kwa moja.

Kwanza, hakikisha posts zinafutwa kweli:

SELECT
    COUNT(*) AS total_posts,
    MIN(id) AS first_post_id,
    MAX(id) AS last_post_id
FROM posts;

Kuzuia posts kufutwa user anapoondolewa, badilisha foreign key kuwa ON DELETE SET NULL:

ALTER TABLE posts
DROP FOREIGN KEY posts_ibfk_1;

ALTER TABLE posts
ADD CONSTRAINT posts_ibfk_1
FOREIGN KEY (user_id) REFERENCES users(id)
ON DELETE SET NULL
ON UPDATE CASCADE;

Sasa user akifutwa, post haitafutwa. Sehemu ya user_id pekee itawekwa kuwa NULL.

Pia hakikisha page yako haina query hatari kama hizi:

DELETE FROM posts;
TRUNCATE TABLE posts;
DELETE FROM users;

Kumbuka: Pagination inaweza kuonyesha posts chache bila kuzifuta. Kwa mfano:

$perPage = 20;

Code hii inaonyesha posts 20 kwa kila ukurasa; posts nyingine zitapatikana kwenye kurasa zinazofuata.

Kabla ya kubadilisha database, tengeneza backup kamili yenye Structure and Data. Hii itakusaidia kurejesha posts endapo tatizo litatokea.

๐Ÿš€ Unahitaji mfumo au website ya biashara?

Chagua huduma hapa chini kisha mteja bofya moja kwa moja kwenda kwenye ukurasa wa huduma au kuwasiliana nasi kwa WhatsApp.

Share this post

Comments

0
No comments yet. Be the first to comment.

Continue Reading

Subscribe

Get new updates

Jiunge upokee posts mpya, tutorials, na updates za mifumo moja kwa moja kwenye email yako.

Quick Actions