בלי להעליב, הקוד שלך דפוק בכ"כ הרבה צורות.
דבר ראשון, בשביל מה אתה עושה alert מתוך הקוד PHP?
את הבדיקה בJS תעשה בצד הלקוח בעזרת JS, לא בעזרת PHP.
בדיקה בPHP עושים מאחורי הקלעים ליתר ביטחון במידה והמשתמש עבר את בדיקות הJS.
ברור שעל ההתחלה זה יקפיץ לך את ההודעות, כי משתני הPOST לא קיימים כי לא נשלח טופס.
דבר נוסף, התנאי שלך בכלל לא נכון.
נתחיל מזה שאתה משתמש בפונקציה isset (שתחזיר TRUE או FALSE), את הערך שבה אתה משווה למשתנה (מה?), ולבסוף אתה מוסיף את ה|| NULL שלא עושה כלום.
אם כבר אתה רוצה לעשות את הקוד הזה תקין, הוא צריך להיות כך:
PHP קוד:
if ( isset($_POST['name']) && isset($_POST['msg']) )
{
if ( $_POST['name'] != $textname || trim($_POST['name']) == "" || $_POST['name'] == null )
{
echo "<script>alert('אנא מלאו שם!')</script>";
}
elseif ( $_POST['msg'] != $txtmsg || trim($_POST['msg']) == "" || $_POST['msg'] == null )
{
echo "<script>alert('אנא הכניסו הודעה!')</script>";
}
}
קודם כל בדקתי שהמשתנים קיימים בכלל אחרת זה תמיד יקפיץ את ההודעה.
לאחר מכן בדקתי אם הערך ללא רווחים בהתחלה ובסוף (trim) ריק או שהוא NULL.
אבל שוב אני אומר, את בדיקות הJS תעשה בצד הלקוח עם JS באמת, ולא סתם ALERT מתוך הקוד PHP.