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

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

bestdesign 09-02-06 15:41

עזרה ב"פיענוח" שגיאה.
 
שלום !

כתבתי את השורה הבאה :

PHP קוד:

$msg $_POST["nameofposter"]; 

וקבילתי השגיאה :

PHP קוד:

NoticeUndefined indexnameofposter in c:program fileseasyphp1-8wwwpost.php on line 4 

מה משמעותה ? וכיצד לטפל בה ?

BlueNosE 09-02-06 16:10

תביא את כל הקוד

bestdesign 09-02-06 16:45

PHP קוד:

<font face="Arial" size="2"> 
<?php 
// הטאג פונט למעלה מיועד כדי לשנות את הפונט בכל העמוד לאריאל גודל 10 פיקסלים 
if($_POST["hidden"] == "true") { // תנאי, אם השדה המוחבא שווה לערך שהכנסנו בו וזה 100 אחוז נכון 
include "connect.php"// הוספת הקובץ של התחברות למסד הנתונים 
$name $_POST["name"]; // קריאת שדה מהטופס, כבר למדנו את זה 
$msg $_POST["msg"]; // " " 
$query mysql_query("INSERT INTO mytable VALUES ('$name','$msg')"); // הכנסת הערכים לפי הסדר לטבלה שלנו 
echo "נשלח בהצלחה! <a href='index.php'>חזור לדף ראשי</a>"// הודעת הצלחה וחזרה לעמוד הראשי 
// סוף תנאי 
?> 
</font>

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

DaNieLLL 09-02-06 16:54

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

בהצלחה, דניאל.

עריכה:

תשנה את mytable ל `mytable`

bestdesign 09-02-06 18:41

טוב אז עכשיו יש לי בעיה אחרת :

נכון ב-index.php אמורים להדפיס את ההודעה ?
אז זהו שאני רואה אינדקס ריק, וזה הקוד :

PHP קוד:

<font face="Arial" size="2"> 
<?php 
// הטאג פונט למעלה מיועד כדי לשנות את הפונט בכל העמוד לאריאל גודל 10 פיקסלים 

include "connect.php"// הוספנו את קובץ ההתחברות ששמרנו ע"מ לא לכתוב את הקוד הזה כל פעם מחדש 
$query mysql_query("SELECT * FROM mytable"); // הרצת שאילתא ששולפת נתונים מהטבלה שלנו 
while($result mysql_fetch_array($query)) { // לולאה שקוראת את כל השורות שיש לנו בטבלה 
$name $result['name']; // קביעת משתנה שיכיל את המידע מהטבלה 
/* 
$result 
הוא המשתנה שקבענו בלולאה, הוא יהיה הפונקציה שקוראת ממסד הנתונים 
עכשיו כדי לשלוף טבלאות יש לעשות כך 
$a['field'] 
כאשר ה 
$a 
מציין את המשתנה שהכנסו בו את הפונקציה 
mysql_fetch_array 
ומה שבסוגריים המרובעות במרחאות כמובן הוא השדה שלנו 
במקרה הזה name 
זה השדה שלנו, ו 
$result 
זה המשתנה שלנו שמכיל את הפונקציה שקוראת ממסד הנתונים 
*/ 

$msg $result['msg']; // אותו דבר כמו בשם, רק כאן זה השדה של ההודעה 
echo "שמך: $name<br>"// הדפסה של השם 
echo "הודעה: $msg<br>-----------------------<br>"// הדפסה של ההודעה 
// סוף הלולאה 
?> 
</font>

מה עושים ?

x-ray 09-02-06 19:08

הגדרת נכון את מסד הנתונים? (שמות העמודות כפי שהם בקוד?)

Tomer 09-02-06 19:19

ציטוט:

נכתב במקור על ידי bestdesign
שלום !

כתבתי את השורה הבאה :

PHP קוד:

$msg $_POST["nameofposter"]; 

וקבילתי השגיאה :

PHP קוד:

NoticeUndefined indexnameofposter in c:program fileseasyphp1-8wwwpost.php on line 4 

מה משמעותה ? וכיצד לטפל בה ?

השגיאה הזו נובעת מהגדרות ב php.ini שאומרות משהו בסגנון של:
PHP קוד:

error_reporting(E_ALL); 

שאומרת במקרה ואתה שם אותה בתחילת הדף להציג כל שגיאה וכל Notice.

השגיאה שנתת סה"כ אומרת שהמשתנה nameofposter לא מוגדר, וכנראה שלא שלחת אליו נתונים.

bestdesign 09-02-06 21:29

ציטוט:

נכתב במקור על ידי x-ray
הגדרת נכון את מסד הנתונים? (שמות העמודות כפי שהם בקוד?)

הגדרתי נכון :

שדה סוג תכונות NULL ברירת מחדל נוסף פעולה
name text לא
msg text לא
סמן הכל / בטל סימון של הכל ביחד עם:

bestdesign 10-02-06 14:10

טוב אז אני ייתן עוד פרט , נכנסתי ל Pma ובגלל שאני על שרת חינמי של 100webspace אז אין לי גישה ל "עיון", ואיני יכולתי לבדוק האם בכלל הפרטים הוכנסו לטבלה.
מה עושים ?


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

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