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

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

Alon.R 27-08-06 17:41

[PHP] צריך עזרה בסידור נתונים מהDB...
 
תראו יש לי שאילתה SELECT:

PHP קוד:

$query mysql_db_query("db_portal","SELECT id,name FROM table WHERE oc ='2' ORDER BY `xx` DESC LIMIT 0 , 3",$mysql_link) or die(mysql_error()); 

עכשיו אני רוצה להוציא נתונים מwhile והפונקציה mysql_fetch_array...
הבעיה היא שיש לי כזה דבר:

HTML קוד:

<td>
asdsadsad
</td>
<td>
פה צריך לצאת משו' מהמסד
</td>
<td>
asdsadsad
</td>
<td>
asdsadsad
</td>
<td>
פה צריך לצאת משו' מהמסד
</td>
<td>
asdsadsad
</td>
<td>
asdsadsad
</td>
<td>
פה צריך לצאת משו' מהמסד
</td>
<td>
asdsadsad
</td>

ואני לא יכול להוציא את זה עם הwhile....

הבנתם אותי? יש למישהו פיתרון למצב הזה? B-)

|לב| תודה.

Eli-Hai 27-08-06 17:45

קוד:

while($row = mysql_fetch_array($query))
echo <<<HTML;
<td>
asdsadsad
</td>
<td>
פה צריך לצאת משו' מהמסד
</td>
HTML;


Rom 27-08-06 18:02

תעשה עם while ככה:
קוד:

$a = 1;
while(...) {
$b[$a] = פה צריך לצאת משו' מהמסד;
$a++;
}
// עכשיו אתה יכול להוציא את הטקסט לפי $b[1], $b[2]...


Alon.R 31-08-06 21:17

DragonRom נוספת למסנג'ר שלי...

Eli-Hai

לא הבנתי את מה שהצעת.

האשכול הוקפץ באישורו של תומר השמן
:D

mlnn 31-08-06 21:19

תשתמש בLIMIT ותוציא כל פעם נתון אחד..

RS324 31-08-06 21:33

PHP קוד:

<td>
asdsadsad
</td>
<
td>
פה צריך לצאת משו' מהמסד
</td>
<td>
asdsadsad
</td>
<td>
asdsadsad
</td>
<td>
פה צריך לצאת משו' 
מהמסד
</td>
<
td>
asdsadsad
</td>
<
td>
asdsadsad
</td>
<
td>
פה צריך לצאת משו מהמסד
</td>
<
td>
asdsadsad
</td

יש איזה חוקיות מסויימת ? כי אם כן ממש לא הבנתי אותה
אם הבנתי נכון אתה רוצה שכל פעם הנתון מה DB יהיה ב TD השני נכון ?

Alon.R 31-08-06 21:45

mlnn

מה זה עוזר לי?
אז אני כבר יכול לעשות שלושה שאילתות..
אבל זה לא פתרון חכם.

RS324

אמממממ חוקיות.....

אין חוקיות, כולה יש שלושה מקומות שאני צריך להוציא אליהם את הנתונים ובינהם יש TDים.

Alter 31-08-06 21:49

אתה יכול להוציא את 3 השורות שאתה צריך, להכניס ל3 משתנים שונים, ואז להדפיס אותם במקום המתאים =\
זה לא יעיל אבל לפי ההסבר הלא ברור שנתת זה מה שיש להציע.

RS324 31-08-06 22:09

ציטוט:

נכתב במקור על ידי Alon.R
mlnn

מה זה עוזר לי?
אז אני כבר יכול לעשות שלושה שאילתות..
אבל זה לא פתרון חכם.

RS324

אמממממ חוקיות.....

אין חוקיות, כולה יש שלושה מקומות שאני צריך להוציא אליהם את הנתונים ובינהם יש TDים.


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

mlnn 31-08-06 22:18

ציטוט:

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

זאת הדרך היחידה :-/ אם אין שום חוקיות וזה סתם אז אתה לא יכול להשתמש בלולאה...

RS324 31-08-06 22:21

ציטוט:

נכתב במקור על ידי mlnn
זאת הדרך היחידה :-/ אם אין שום חוקיות וזה סתם אז אתה לא יכול להשתמש בלולאה...

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

אין בעיה, תעשה COUNTER נגיד I כל ריצה של הלולאה תגדיל אותו ב 1

בכל ריצה תעשה RAND מ 1 עד 3

אם I == RANDNUM תציג בתא שמספרו I את המידע...

פשוט מאד...

mlnn 31-08-06 22:22

ציטוט:

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

אין בעיה, תעשה COUNTER נגיד I כל ריצה של הלולאה תגדיל אותו ב 1

בכל ריצה תעשה RAND מ 1 עד 3

אם I == RANDNUM תציג בתא שמספרו I את המידע...

פשוט מאד...

התכוונתי שאין חוקיות למבנה של הטבלה, אז ככה או ככה זה יוצא 3 שאילתות...

RS324 31-08-06 22:32

למה אין חוקיות ? הוא רוצה שיהיה לו 3 TD בכל הוצאה מהמסד
כלומר אחרי שאילתה יהיה לו 9 TD בשורה אחת

זה כבר חוק לא ?

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

Alon.R 01-09-06 11:13

אתם מסתבכים יותר מידי אנשים...

יש לי כמה TDים, הם לא חוזרים על עצמם.
תסתכלו על זה ככה:

HTML קוד:

<html>
<body>
<table>
<tr>
<td>
סתם משו'....
</td>
<td>
סתם משו'....
</td>
<td>
מידע מהטבלה
</td>
<td>
סתם משו'....
</td>
<td>
מידע מהטבלה
</td>
<td>
סתם משו'....
</td>
<td>
סתם משו'....
</td>
<td>
סתם משו'....
</td>
<td>
מידע מהטבלה
</td></tr>
</table>
</body>
</html>

אני לא אומר שחייבים עם while
אבל אני צריך איזשהו דרך להוציא את השלוש נתונים מהטבלה (שהם מסודרים לפי X והם מוגבלים ל3 נתונים), אני צריך להוציא אותם במקומות של "מידע מהטבלה"

lalamen 01-09-06 11:31

אתה יכול לעשות דבר כזה

PHP קוד:

$query1 mysql_query("SELECT * FROM `download` ORDER BY `id` DESC LIMIT 0 , 1");
$query2 mysql_query("SELECT * FROM `download` ORDER BY `id` DESC LIMIT 1 , 2");
$query3 mysql_query("SELECT * FROM `download` ORDER BY `id` DESC LIMIT 2 , 3");
$row1 =mysql_fetch_array($query1);
$row2 =mysql_fetch_array($query2);
$row3 =mysql_fetch_array($query3);


echo 
"

<html> 
<body> 
<table> 
<tr> 
<td> סתם משהו... </td> 
<td> סתם משהו... </td> 
<td>{$row1['title']}</td> 
<td> סתם משהו... </td> 
<td> {$row2['title']}</td> 
<td> סתם משהו... </td> 
<td> סתם משהו... </td> 
<td> סתם משהו... </td> 
<td>{$row3['title']}</td>
</tr> 
</table> 
</body>
</html>
"



RS324 01-09-06 13:41

ציטוט:

נכתב במקור על ידי lalamen
אתה יכול לעשות דבר כזה

PHP קוד:

$query1 mysql_query("SELECT * FROM `download` ORDER BY `id` DESC LIMIT 0 , 1");
$query2 mysql_query("SELECT * FROM `download` ORDER BY `id` DESC LIMIT 1 , 2");
$query3 mysql_query("SELECT * FROM `download` ORDER BY `id` DESC LIMIT 2 , 3");
$row1 =mysql_fetch_array($query1);
$row2 =mysql_fetch_array($query2);
$row3 =mysql_fetch_array($query3);


echo 
"

<html> 
<body> 
<table> 
<tr> 
<td> סתם משהו... </td> 
<td> סתם משהו... </td> 
<td>{$row1['title']}</td> 
<td> סתם משהו... </td> 
<td> {$row2['title']}</td> 
<td> סתם משהו... </td> 
<td> סתם משהו... </td> 
<td> סתם משהו... </td> 
<td>{$row3['title']}</td>
</tr> 
</table> 
</body>
</html>
"




אבל למה 3 שאילתות ? אני יכול להגיע לאותה תוצאה בעזרת שאילתה אחת... בבקשה :

PHP קוד:

$myarray = array();

$query mysql_query("SELECT * FROM `download` ORDER BY `id` DESC LIMIT 0 , 3");


while (
$result mysql_fetch_array($query))
{
    
$myarray[] = $result;
    
}

$row1 $myarray[0];
$row2 $myarray[2];
$row3 $myarray[2]; 



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

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