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

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

ShLooK 31-10-07 01:14

[PHP] הצגת פלט בלולאה...
 
אז ככה, יש לי קטע בקוד העיצוב שהולך ככה:
PHP קוד:

            <td align="left" width="80%">
                {
$content}
            </
td

עכשיו באחד הדפים, אני עושה ככה:
PHP קוד:

while($array=mysql_fetch_array($GuidesQuery)) {
$i += 1;
$content = <<<CONTENT
<table border="1" align="center">
    <tr>
        <td><a href="game.php?gID=
{$array['GameID']}">{$array['GameName']}</a></td>
    </tr>
    <tr>
        <td>
{$array['GameDate']}</td>
    </tr>
    <tr>
        <td>
{$array['GameDesc']}</td>
    </tr>
</table>
CONTENT;


וזה מציג לי רק את הרשומה האחרונה...
וכאילו הבנתי את הקטע שיש בעצם 4 משתנים בשם content ורק האחרון הוא זה שיקבע מה יהיה ערך המשתנה... אז מה אפשר לעשות?

meshuga 31-10-07 01:38

ציטוט:

נכתב במקור על ידי ShLooK (פרסם 573343)
אז ככה, יש לי קטע בקוד העיצוב שהולך ככה:
PHP קוד:

            <td align="left" width="80%">
                {
$content}
            </
td

עכשיו באחד הדפים, אני עושה ככה:
PHP קוד:

while($array=mysql_fetch_array($GuidesQuery)) {
$i += 1;
$content = <<<CONTENT
<table border="1" align="center">
    <tr>
        <td><a href="game.php?gID=
{$array['GameID']}">{$array['GameName']}</a></td>
    </tr>
    <tr>
        <td>
{$array['GameDate']}</td>
    </tr>
    <tr>
        <td>
{$array['GameDesc']}</td>
    </tr>
</table>
CONTENT;


וזה מציג לי רק את הרשומה האחרונה...
וכאילו הבנתי את הקטע שיש בעצם 4 משתנים בשם content ורק האחרון הוא זה שיקבע מה יהיה ערך המשתנה... אז מה אפשר לעשות?

PHP קוד:

$content =$content.$value;
///או
$content .=$value

איך שיותר נוח לך...

אתה יכול גם להשתמש עם הפונקציות של output buffer (כמו ob_ start וכו'...חפש על זה php.net)

4ior 31-10-07 01:39

במקום
$content = <<<CONTENT
תשים
$content .= <<<CONTENT

עריכה..לא ראיתי ש meshuga כתב...בעקרון זה אותו הדבר כמו מה שאמרתי..

ShLooK 31-10-07 02:02

אוקיי, זה עובד אבל יש בעיה...
קוד:

Notice: Undefined variable: content in c:\program files\easyphp1-8\www\games\cat.php on line 16
ושורה 16:
PHP קוד:

$content .= <<<CONTENT 

תודה!
ועוד משהו, משום מה בכל פעם הוא יורד שורה... ולמרות שלא כתבתי <br />
למה...?

חיים 31-10-07 09:08

נסה להוסיף לפני ה-while כזה דבר:
PHP קוד:

$content ""

ובקשר לבעיה השנייה שלך זה כנראה בגלל שיש לך tr חדש כל פעם אז זה יותר שורה

TopSite 31-10-07 12:08

הינה
PHP קוד:

$array=mysql_fetch_array($GuidesQuery);
$content ='';
foreach(
$array AS $arr) {
    
$content.= '
    
        <table border="1" align="center">
            <tr>
                <td><a href="game.php?gID='
.$arr["GameID"].'">'.$arr["GameName"].'</a></td>
            </tr>
            <tr>
                <td>'
.$arr["GameDate"].'</td>
            </tr>
            <tr>
                <td>'
.$arr["GameDesc"].'</td>
            </tr>
        </table>
    
    '
;


רק שתדע, אם $arr["GameDesc"] או כל משתנה אחר במערך, הוא מערך נוסף, הפלט שלך יהיה Array( ).


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

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