581
צפיות
צפיות
13
תשובות
תשובות
PHP עם MySql על IIS – מקבל דף ריק
על XP/SP2 התקנתי את הגירסה האחרונה של PHP
PHP Version 5.1.4טיפלתי ב IIS לפי ההוראות
בדקתי באמצעות דף המכיל קוד זה:
<?php
phpinfo();
?>
וקיבלתי תוצאה שנראית טוב.
התקנתי גירסה אחרונה 5 Mysql
יצרתי DB באמצעות EMS SQL Manager 2005 for MySQL
נסיתי דף המכיל את הקוד הזה:
<?php
$host = "localhost";
$username = "root";
$password = "1234";
$database = "db";
$server = mysql_connect($host, $username, $password) or die(mysql_error());
// Select the database now:
$connection = mysql_select_db($database, $server);
//Do queries here.
//Close Connection
mysql_close($server);
phpinfo();
?>
וקיבלתי דף ריק גם ב IE וגם ב FF?
13 תשובות
ב-PHP4 משתמשים ב-mysqli ולא ב-mysql
ממש לא נכון מה שרשמץ
לא הבנתי מה אתה אמור לקבל ?
אם זה הקוד שרשמת אז אתה לא אמור לקבל שום דבר, זה שקיבלת דף ריק זה תקין.
תבצע איזה שליפת נתונים ממסד נתונים ותראה אם זה עובד.
תבדוק גם שהנתונים שהזנת להתחברות למסד נכונים.
בכל מקרה לסיכום הקוד שרשמת לא אמור להפיק פלט מסויים, כך שאם קיבלת דף ריק זה תקין, זה גם אומר שלא היו שום תקלות בהתחברות למסד נתונים.
שים לב בסוף הקוד מופיע phpinfo !
אם אני לא טועה…
הפקודה עובדת רק שהיא באה לבד בקוד, לא עם עובד קוד.
בכל מקרה תנסה לבצע פעולות פשוטות על מסד הנתונים שלך ולראות מה קורה איתו, ממה שהצגת אני לא רואה שום תקלה עם המסד נתונים שלך.
תנסה לשלוף נתונים מטבלה קיימת במסד, לבצע הוספה של רשומה למסד הנתונים או לעדכן נתונים קיימים.
אם תתקל בבעיה מסויימת, תציג אותה פה ונראה כיצד ניתן לעזור לך.
הוספתי שם פקודת echo
הוספתי שם פקודת
echo "blabla";
ואין כלום.
כמה דברים
דבר ראשון אמרתי לך להפריד את הפקודה של phpinfo משאר הפקודות, פקודה זאת אמור לבוא לבד בקוד של ה PHP.
דבר שני אם עשית זאת, ביקשתי שתשלוף נתונים מהמסד נתונים שלך.
דבר שלישי תעבוד על-פי המדריך שפה ותגיד מה קורה.
https://www.webmaster.org.il/guide.asp?subject=php&class=mysql
דבר נוסף, תריץ סתם קוד כמו
<?
echo "vvv";
?>
לבד בדף PHP ותפעיל אותו מהמחשב שלך ותראה מה קורה.
אם לא קורה כלום, תראה אם התקנת נכון את שרת ה PHP שלך ואם כל ההגדרות שלו נכונות.
כאשר זה כתוב לבד זה עובד!
כאשר אני כותב דף לבד עם ECHO זה עובד מצויין.
כמו כן אם אני כותב ECHO לפני הפקודה mysql_connect
זה גם עובד, אך לא אחרי הפקודה הזו.
אולי חסר לי הבנה בסיסית ב PHP
כנראה שזאת באמת הבעיה
הבנה של PHP, כמו כן בתגובה הקודמת שלי, הפנתי אותך למדריך שיסביר לך את הבסיס של PHP vs MySQL תקרא אותו וכמו שאמרתי אם תתקל בבעיות תפנה אותם לפורום הזה ותקבל מענה.
בכל מקרה אין שום תקלה בשרת לפי מה שאתה רושם, תעבוד לפי המדריך ותקרא יש פה עוד המון מדריכים בשפה הזאת ומשם תתקדם.
שיהיה לך בהצלחה.
PHP פשוט מקבל דף ריק
ניסיתי עכשיו משהוא פשוט יותר מתוך המדריך למתחילים, בסך הכל עבודה
עם טופס. כאשר אני פותח את ההערה על השורה השניה בקוד של הקובץ
a.php אני מקבל דף ריק ???
b.php—
<html>
<body>
<form action="a.php" method="post">
Name: <input type="text" id="username" name="username" /><br />
<input type="submit" value="send" />
</form>
<body>
<html>
a.php—
<?php
echo ("it's work!");
//echo ("your name is $_POST['name'] <br />");
?>
צריך לתקן את הקוד!
כנראה שיש חוסר התאמה בקונפיגורציה שלי,או שיש טעות בקוד
של המדריך. השורה המדוברת צריכה לגשת לשדה username
ולא כמו שכתוב:
echo ("your name is $_POST['name']
????
עדיין לא מצאתי תשובה לבעיית ה MySQL
עקבתי אחר המדריך המתאר קריאת נתונים מ MySQL
אבל בכל מקרה כל echo שבא אחרי ההוראה mysql_connect
אינו פועל!?
אפשר להשתמש בmysql הקלאסי
אבל הרכיב שמומלץ להשתמש בו זה mysqli הוא יעיל יותר ומותאם יותר לעבודה מול הגרסאות האחרונות של MySQL (גרסאות 4.1 ו-5+)
גרסאות אלו הכי נפוצות (טוב, 5 פחות אבל 4.1 נפוצה מאוד) ולכן כדאי להשתמש ברכיב שהוכן בשבילם.