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

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

Dum 21-08-06 20:28

עידכון נתונים במסד
 
אני רוצה לעדכן משהו במסד אני מנסה אבל בתוצאה זה כותב לי 0 שורות עודכנו.
PHP קוד:

        $query "UPDATE NEWS SET Author = '$author' where id='$id'";
        
$result mysql_query($query); 

מישהו רואה את הבעיה?
שם הטבלה: NEWS
שם השורה או עמודה מה שזה לא יהיה: Author
והמשתנה: $author

RS324 21-08-06 20:40

תבדוק אם יש ערך ל ID לפעמים אם זה לא מעדכן כנראה שא ID הוא 0 או שאין ID כזה במסד
תעשה ECHO $ID;DIE; ותראה אם יש לו ערך כלשהו

Dum 21-08-06 20:43

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

RS324 21-08-06 20:54

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

Dum 21-08-06 20:54

PHP קוד:

    if (isset($_GET["id"]))
    {
        
$id$_GET["id"];
    }



    if (isset(
$title)) //בדיקה אם קיימים נתונים במשתנים אלו דהיינו אם הם קיימים
        
{
        
$query "UPDATE NEWS SET Author = '$author' where id=$id ";
        
        
$result mysql_query($query);
        if (!
$result)
            die (
"Couldn't update:".mysql_error());
        echo 
"<h1>Table updated ".mysql_affected_rows()." row(s) changed</h1><br>";
        }    



    
$result mysql_query("SELECT * FROM NEWS where id = '$id' ");
    
$a_row=mysql_fetch_array($result);

    echo 
"<form action='$PHP_SELF' method='POST'>\n";
    echo 
"<input type='text' name='title' VALUE=".$a_row['Title'].">";
    echo 
"The Title<P>";
    echo 
"<input type='text' name='author' VALUE=".$a_row['Author'].">";
    echo 
"Your Name<P>\n";
    echo 
"<textarea rows=7 cols=25 name=\"content\">".$a_row['Content']."</textarea>\n";
    print 
"<input type=\"submit\" value=\"submit!\"></form>\n";
    



    
mysql_close($link); 


Tomer 21-08-06 20:59

PHP קוד:

if (isset($_GET["id"])) 
    { 
        
$id$_GET["id"]; 
    } 

אני לא בטוח, אבל יש סבירות שבגלל שהדף נשלח מחדש וה id לא מועבר ב POST (או GET) בצורה מחודשת - הוא מתבטל. נסה להעביר את id מחדש, למשל:

PHP קוד:

    echo "<form action='$PHP_SELF?id=$id' method='POST'>\n"


Dum 21-08-06 21:02

נפתרה הבעיה :) תודה


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

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