dupla while, táblázat, sql, mi1más :)
Sziasztok!
Az iWiW-hez hasonló közösségi oldalt csinálgatok. Bármilyen felhasználókat listázó oldalon az ismeretlen userek sima, az ismerősök zöld, míg a függő kapcsolatok piros szegéllyel jelennek meg. (az adott user meg sárgával) A kódomban vmi nincs rendben, mert a lekérdezés eredményét tartalmazó tömbömet csak egyszer vizsgálja meg, így az adott felhasználónak mindegy, hogy hány ismerőse, vagy függő kapcsolata van, az adott típusból csak az elsőt keretezi be a megfelelő színnel. (pl. 2 függő, 3 ismerősnél 1 függőt, 1 ismerőst keretez be zölddel.) Kérlek titeket, ha tudtok, segítsetek! Köszönettel: daniboyle
A kód:
■ Az iWiW-hez hasonló közösségi oldalt csinálgatok. Bármilyen felhasználókat listázó oldalon az ismeretlen userek sima, az ismerősök zöld, míg a függő kapcsolatok piros szegéllyel jelennek meg. (az adott user meg sárgával) A kódomban vmi nincs rendben, mert a lekérdezés eredményét tartalmazó tömbömet csak egyszer vizsgálja meg, így az adott felhasználónak mindegy, hogy hány ismerőse, vagy függő kapcsolata van, az adott típusból csak az elsőt keretezi be a megfelelő színnel. (pl. 2 függő, 3 ismerősnél 1 függőt, 1 ismerőst keretez be zölddel.) Kérlek titeket, ha tudtok, segítsetek! Köszönettel: daniboyle
A kód:
- <?php
- $connect = mysql_connect("localhost","csovike10_wiwi","password");
- $eredmeny = mysql_db_query ("csovike10_wiwi","SELECT lastname, firstname, username, title, town FROM wiwi ORDER BY regdate DESC");
- $user = $_SESSION["user"];
- $checkcontacttype = mysql_db_query("csovike10_wiwi","SELECT pendingin, pendingout, contact FROM contacts WHERE username='$user'");
- while($contacttype = mysql_fetch_array($checkcontacttype)) /ezzel nem stimmel vmi/
- while ($sor = mysql_fetch_array ($eredmeny))
- {
- echo'
- <div>
- <table border="0" cellpadding="15" align="left">
- <tr>
- <td>
- <table align="left" border="1"';
- if($sor["username"]==$_SESSION["user"]) echo ' bordercolor="#eee769"';
- else if($contacttype["pendingin"]==$sor["username"] | $contacttype["pendingout"]==$sor["username"]) echo ' bordercolor="#ee838d"';
- else if($contacttype["contact"]==$sor["username"]) echo ' bordercolor="#7be135"';
- echo'>
- <tr>
- <td><table width="100" onMouseOver=bgColor="#d5dde8" onMouseOut=bgColor="#e4e9f0" height="200" border="0" cellpadding="5" align="left"><tr><td width="100" height="100"><a href="main.php?page=profile&user='.$sor["username"].'"><center><img src="pics/noimage.gif" width="100" height="53" border="0"></center></a></td>
- </tr>
- <tr>
- <td height="40"><center>
- <b><a href="main.php?page=profile&user='.$sor["username"].'">'.$sor["title"].' '.$sor["lastname"].' '.$sor["firstname"].'</a></b></center></td>
- </tr>
- <tr>
- <td height="10"><div align="center">'.$sor["username"].'</div></td>
- </tr>
- <tr>
- <td height="10"><div align="center">'.$sor["town"].' </div></td>
- </tr>
- <tr>
- <td height="10"><div align="center">életkor</div>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </div>
- ';
- }
- echo '<br><br><br>';
- mysql_free_result ($eredmeny);
- mysql_close($connect);
- ?>
mysql_fetch_array
Amit tehetsz, az az, hogy előre lekérdezed egy tömbbe a teljes $contacttype táblázatodat, és azon mész végig mondjuk foreach-csel a fenti while ciklus helyett (nem mintha bármelyik is hatékony lenne több (tíz/száz) ezer felhasználó esetén).
A másik az, hogy mindenképp figyelj a változók escapelésére, mert előfordulhat hogy a felhasználó neve ebben az esetben mondjuk tartalmaz idézőjelet, és akkor bukott az egész script. És persze ez nem csak az SQL query-re érvényes, hanem a HTML formázásodra is.
Mondjuk tegyük fel hogy a felhasználó neve O'Reilly. Ekkor a
Hasonló a helyzet például az
mysql_fetch_array
Amit tehetsz, az az, hogy előre lekérdezed egy tömbbe a teljes $contacttype táblázatodat, és azon mész végig mondjuk foreach-csel a fenti while ciklus helyett (nem mintha bármelyik is hatékony lenne több (tíz/száz) ezer felhasználó esetén).
A másik az, hogy mindenképp figyelj a változók escapelésére, mert előfordulhat hogy a felhasználó neve ebben az esetben mondjuk tartalmaz idézőjelet, és akkor bukott az egész script. És persze ez nem csak az SQL query-re érvényes, hanem a HTML formázásodra is.
Mondjuk tegyük fel hogy a felhasználó neve O'Reilly. Ekkor a
Hasonló a helyzet például az
mysql_fetch_array
Amit tehetsz, az az, hogy előre lekérdezed egy tömbbe a teljes $contacttype táblázatodat, és azon mész végig mondjuk foreach-csel a fenti while ciklus helyett (nem mintha bármelyik is hatékony lenne több (tíz/száz) ezer felhasználó esetén).
A másik az, hogy mindenképp figyelj a változók escapelésére, mert előfordulhat hogy a felhasználó neve ebben az esetben mondjuk tartalmaz idézőjelet, és akkor bukott az egész script. És persze ez nem csak az SQL query-re érvényes, hanem a HTML formázásodra is.
Mondjuk tegyük fel hogy a felhasználó neve O'Reilly. Ekkor a
Hasonló a helyzet például az
Hali! Köszi szépen a választ.
Üdv: daniboyle
com
<compilation>
<assemblies>
<add assembly="MNissen.DataControls, Version=1.1.0.0, Culture=neutral, PublicKeyToken=e21df62f5c740a13" />
<add assembly="Web, Version=1.0.0.0, Culture=neutral, PublicKeyToken=e21df62f5c740a13" />
<add assembly="Services, Version=1.0.0.0, Culture=neutral, PublicKeyToken=e21df62f5c740a13" />
<add assembly="Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=e21df62f5c740a13" />
<add assembly="Microsoft.ApplicationBlocks.ExceptionManagement, Version=1.0.0.0, Culture=neutral, PublicKeyToken=e21df62f5c740a13" />
</assemblies>
</compilation>
</system.web>
------------------
132-S-708 ! 132-S-712 ! 132-S-815 ! 132-S-900