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

הוסטס - פורום אחסון האתרים הגדול בישראל (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=71756)

Neutral 05-02-09 15:23

[עזרה] PHP
 
שלום לכולם. (:
אני כרגע עובד על מערכת ניהול תוכן כלשהי (עבודה עם מסד נתונים), ואני חשבתי לעשות כזה דבר:

ברגע שאלחץ על הכפתור שמעדכן את הנתונים - אוטומטית, האתר שכביכול עדכנתי לו את הנתונים, ירוענן.

השאלה שלי, איך אני עושה זאת ואם בכלל זה דבר אפשרי.
וחברים, תג Meta Refresh הוא לא תחליף או פתרון למצב הזה. מכיוון שכשבנאדם יגלוש באתר,
וכל X שניות העמוד ירוענן, זה יהיה מאד לא נוח ולא מקצועי.

תודה לעוזרים.
יום נעים :)

mlnn 05-02-09 15:35

מן הסתם אתה צריך לבדוק כל X זמן אם האתר עודכן ואז לעדכן אותו.. ajax.
לדעתי סתם מיותר.

Neutral 05-02-09 15:43

ציטוט:

נכתב במקור על ידי mlnn (פרסם 696713)
מן הסתם אתה צריך לבדוק כל X זמן אם האתר עודכן ואז לעדכן אותו.. ajax.
לדעתי סתם מיותר.

אז מה אתה מציע?
לדעתך לא לעשות כלום בעניין הזה? (כלומר, כל פעם יצטרכו לרענן את הדף ולראות אם עדכנו אותו או לא? קצת מוזר האמת :S)

dor77 05-02-09 15:45

לדעתי זה לא דבר שרצוי שיהיה במערכת ניהול תוכן.
נגיד עדכנת את דף הבית, הגולש גולש כעת בדף הבית, הוא נכנס לקטגוריה כלשהי באתר, יחזור לדף הבית, וזהו, הדף מעודכן.
זה סתם שכלול לא רצוי וסתם מסבך, כמו שאמרת זה לא יהיה נוח בכלל.

Neutral 05-02-09 15:46

ציטוט:

נכתב במקור על ידי dor77 (פרסם 696717)
לדעתי זה לא דבר שרצוי שיהיה במערכת ניהול תוכן.
נגיד עדכנת את דף הבית, הגולש גולש כעת בדף הבית, הוא נכנס לקטגוריה כלשהי באתר, יחזור לדף הבית, וזהו, הדף מעודכן.
זה סתם שכלול לא רצוי וסתם מסבך, כמו שאמרת זה לא יהיה נוח בכלל.

אוקיי,
אשאיר את זה כך.

תודה רבה.

--------------
בעיה אחרת שנתקלתי בה כרגע, ביצעתי include לדף PHP כלשהו, וקיבלתי שגיאה:
ציטוט:

Fatal error: Cannot redeclare engval() (previously declared in /home/zvaim/domains/site/public_html/cms/admin/functions/sql.php:2) in /home/zvaim/domains/site/public_html/cms/admin/functions/sql.php on line 24

dor77 05-02-09 16:01

תביא את הקוד של הדף..

Elad-A 05-02-09 16:03

זה אומר שניסית ליצור פונקצייה פעמיים [או יותר].

Neutral 05-02-09 16:07

ציטוט:

נכתב במקור על ידי Elad-A (פרסם 696724)
זה אומר שניסית ליצור פונקצייה פעמיים [או יותר].

עכשיו הבנתי,
תודה רבה.

אפשר לנעול.

dor77 05-02-09 16:33

היה לך include בתוך include?

vadimg88 05-02-09 16:41

לא, היה לו פעמייים פונקציה באותו השם.

dor77 05-02-09 16:52

ציטוט:

נכתב במקור על ידי vadimg88 (פרסם 696728)
לא, היה לו פעמייים פונקציה באותו השם.

אהה, הבנתי, תודה (:
פשוט חשבתי שהיה לו פעמיים inckude מה שטבעי ושהמון אתרים משתמשים בזה כל הזמן.

תודה.

Neutral 05-02-09 19:35

שאלה נוספת קטנה, איך אני יודע מהו ה ID של טבלה חדשה שפתחת?
למשל:

PHP קוד:

<?php
$query 
mysql_query("SELECT * FROM menu WHERE s_ID=X");
?>

במקום ה X - אמור לבוא מס' ה ID של הטבלה החדשה שיצרתי, השאלה שלי, היא איך אני בעצם יודע איזה מס' אני צריך לרשום שם?

תודה.

dor77 05-02-09 19:48

יש לך את ה id שלה בכתובת?
אז אתה עושה:
PHP קוד:

WHERE id=$_GET['id'


vadimg88 05-02-09 20:32

אם ה ID הוכנס אחרון אז אתה תוכל לעשות דבר כזה:

קוד:

$query = mysql_query("SELECT * FROM menu WHERE s_ID=".LAST_INSERT_ID()."");

Neutral 06-02-09 14:21

תודה חברים, הסתדרתי.
בסוף עשיתי:

PHP קוד:

$query mysql_query("SELECT * FROM menu");
$sql mysql_fetch_array($query); 


Neutral 07-02-09 12:00

עכשיו, משהו מוזר שנתקלתי בו:
PHP קוד:

<?php
    session_start
();
    require 
"config.php";
    require 
"sql.php";
    require 
"check.php";
    require 
"pubvar.php";
    
$act=isset($_GET['act']) ? $_GET['act'] : "";
    if(
$logged)
    {
        if(
$act=="upd")
        {
            
$title htmlspecialchars($_POST['title1']);
                    
$desc htmlspecialchars($_POST['desc1']);
                    
$keywords htmlspecialchars($_POST['keywords1']);
                    
$query mysql_query("UPDATE settings SET
                    s_title='$title',
                    s_desc='$desc',
                    s_keywords='$keywords',
                    WHERE s_ID=1"
);
            
$memo=clean($_POST['content']);
            
$amessage $memo;
                                       
                                        
$amessage str_replace("\n""<br/>"$amessage);
            
$query="UPDATE pages SET content='$amessage' WHERE id=1";
            if(
$result=mysql_query($query,$link))
                
header("Location: edit-index.php");
        }
        else
        {
            
$query="SELECT * FROM pages WHERE id=1";
            
$result=mysql_query($query,$link);
            while(
$row=mysql_fetch_array($result))
                
$text=$row['content'];
        }
    }
?>

משום מה, הוא לא מעדכן את הנתונים!
מה הסיבה?

Daniel 07-02-09 12:12

נסה להוסיף לאחר כל IF,
echo "test";
ואז תראה מתי הוא "נעצר" ואם הוא בכלל מגיע ל-Update.

כמו כן, האם ה-s_id הו 1 וה-id הוא 1? תעשה or die(mysql_error()) לבדוק אם יש בעייה בשאילתה

Oded Dwek 07-02-09 12:15

כתבת שם
PHP קוד:

$query mysql_query("UPDATE settings SET
                    s_title='$title',
                    s_desc='$desc',
                    s_keywords='$keywords',
                    WHERE s_ID=1"
); 

תשנה ל:
PHP קוד:

$query mysql_query("UPDATE settings SET
                    s_title='$title',
                    s_desc='$desc',
                    s_keywords='$keywords'
                    WHERE s_ID=1"
); 


WebProject 07-02-09 12:35

ציטוט:

נכתב במקור על ידי vadimg88 (פרסם 696774)
אם ה ID הוכנס אחרון אז אתה תוכל לעשות דבר כזה:

קוד:

$query = mysql_query("SELECT * FROM menu WHERE s_ID=".LAST_INSERT_ID()."");

mysql_insert_id() ** :)

vadimg88 07-02-09 12:36

שני דברים שונים.

http://dev.mysql.com/doc/refman/5.0/...unique-id.html

Neutral 07-02-09 12:38

תודה חברים, הסתדרתי :)
שוב תודה לכולם.

ניתן לנעול.
שבת שלום.

Daniel 07-02-09 13:08

ציטוט:

נכתב במקור על ידי vadimg88 (פרסם 697039)

זוהי פקודת mysql, אתה הוספת ". וכן זה יציג PHP Parse Error, לא?

vadimg88 07-02-09 15:39

לא מה שאני הצגתי זה פקודת SQL, מה ש WEBPROJECT הציג זוהי פקודת PHP (בעקרון שניהם עושים את אותו הדבר אבל השימוש בהם שונה).

והוספתי ". כי זה פקודה לכל דבר אם תכניס את זה סתם ככה זה יציג שגיאה (לפחות ככה זה אמור להיות בתאוריה)


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

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