הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   כמה שאלות קטנות בPHP (https://hosts.co.il/forums/showthread.php?t=88566)

דור 18-03-11 16:00

כמה שאלות קטנות בPHP
 
היי,

אני צריך קצת עזרה בPHP בבקשה.

1. יש לי מסד נתונים עם שדה מסוג DATETIME. אני רוצה כל פעם לקבל את התאריך של היום. מה הפעולה שעושה זו וממירה את זה לDATETIME?
2. יש לי אדמין ואני רוצה שברגע שהמשתמש מתחבר כאדמין זה ישנה את הSESSION של ADMIN ל TRUE ואז יעביר אותו דף (ניסיתי בעזרת header אבל זה לא טוב כי זה לא מעביר את הדף עם השינויים שהתבצעו בSESSION)
3. יש לי דף צור קשר, אני רוצה שהשגיאות שיהיו ישארו באותו דף (כולל הודעת הצלחה) ולא בדף נפרד. איך עושים זאת?

(חיפשתי בגוגל ולא מצאתי, אשמח אם תעזרו לי)

Programnnd 18-03-11 17:50

1. אני אבדוק לך את זה
2. תעשה שגם אם אתה מחובר שאתה רוצה להיכנס ללוח הבקרה זה צריך לבדוק אם הסיישן של המנהל שווה אמת או שקר (TRUE OR FALSE) ואם הסיישן של המנהל שווה שקר יהיה טופס התחברות ללוח הבקרה (גם אם אתה מחובר למערכת כמשתמש רגיל)
דוגמת קוד בסיסית:
PHP קוד:

<?php
if ($_SESSION["admin"] == false)
{
//הקוד לטופס התחברות ללוח הבקרה במידה ואתה לא מחובר למערכת כמנהל מערכת
if (isset($_POST["submit"]))
{
/*
במידה ולחצת על הכפתור שלח של ההתחברות תבצע את כל הבדיקות שצריך EMPTY וכ'ו ואז אם הכול בסדר תעשה*/
$_SESSION["admin"] = true;
echo 
'<meta http-equiv="refresh" content="3; url=page.php" />';
}
} else {
//מה שיוצג למנהל המערכת במידה והוא מחובר בתור מנהל מערכת לאתר
}
?>

3. לא הבנתי אשמח אם תסביר את עצמך מחדש

חג שמח ושבת שלום !

אדיר 18-03-11 20:32

1. http://dev.mysql.com/doc/refman/5.5/...l#function_now, בהנחה שמה שאתה מנסה לעשות זה להכניס את הזמן הנוכחי, לא לקבל אותו (ניתן להשתמש גם ב- CURRENT_TIMESTAMP בשביל זה).
2. סביר להניח שיש טעות בקוד - תוודא שאתה קובע את הערך החדש של הסיישן לפני שאתה שולח את ה- header ואם תתן פה את הקוד שעשית זה יעזור.
3. jquery (עם שימוש ב- ajax) מספקת פתרון מצויין ויפה!, ניתן גם להשתמש ב- ajax בלבד כמובן.

דור 18-03-11 21:04

xPerfection -
3.אם אני לא מעוניין להשתמש בJQUERY? (ניסיתי ודי הסתבכתי עם זה..)
2. בנוגע לאדמין - עשיתי $_SESSION["admin"] = true;
ואז header(location: admin.php).
1. איך אני משלב את זה בתוך משפט INSERT? (אני באמת רוצה להכניס את התאריך של אותו רגע)

Programnnd
2. זה באמת מה שעשיתי אחי, עדיין לא עובד.

אדיר 18-03-11 21:27

1.
קוד:

INSERT INTO table (name, time) VALUES ('דור', NOW())
כמו כן אתה יכול לעשות שזה יהיה אוטומטי (כמו auto_increment) ע"י הגדרת ברירת המחדל של השדה כ- CURRENT_TIMESTAMP או NOW().
2. אפשר לראות קצת יותר קוד? את החלק שבו אתה קובע את הערך החדש (בדף שמעביר) ואת החלק שבודק האם המשתמש מחובר כאדמין (בדף שאתה מעביר אליו).
3. אתה יכול להשתמש ב- AJAX בלבד (בלי JQUERY).


כל הזמנים הם GMT +2. הזמן כעת הוא 01:56.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ