Autor Zpráva
irish cream
Profil *
ahojte.. mam taky problem, neviem ci mi niekto poradi, ale potrebujem si vypisat z databazy obrazok+popis a aby to zapisovalo vedla seba, po dvojici v riadku. pouzil som nasledujuci script, no vypis je vedla seba, ale v kazdom riadku mam 2krat ten isty vypis, cize 2krat ta ista fotka a ten isty popis. a tento problem neviem odstranit, neviem, preco sa to tak chova. poradi niekto?

tu je script:

$spojenie = mysql_pconnect("localhost","","" );
mysql_select_db("db", $spojenie);

$vysledok = mysql_query("SELECT * FROM table");
mysql_query("SET CHARACTER SET utf8");
while ($zaznam = mysql_fetch_array($vysledok) ):
echo '<table><td valign="top" width="350">';
echo $zaznam["small foto"] ;
echo $zaznam["link"] ;
echo '<br>';
echo $zaznam["description"] ;
echo '<td valign="top" width="350">';
echo $zaznam["small foto"] ;
echo $zaznam["link"] ;
echo '<br>';
echo $zaznam["description"] ;
echo '</table>';
endwhile; ?>
Taps
Profil
irish cream
vždyt tam máš dvakrát echo $zaznam["small foto"] ; tak to je logické že ty hodnoty se ti budou vypisovat 2x
Alphard
Profil
protože vypisujete to stejné, další položku načte až další volání mysql_fetch_array()
tohle se řeší s pomocí ($i++ % 2)?x:y;
irish cream
Profil *
alphard.. vysvetli mi ($i++ % 2)?x:y aspon v kratkosti.. hlavne ?x:y nechapem.. please..
Alphard
Profil
tzv. terciární operátor
já bych ten kód upravil asi takhle:
mysql_query("SET CHARACTER SET utf8");  // po dotazuje je již k ničemu
$vysledok = mysql_query("SELECT * FROM table"); 
echo '<table><tr>'; // vše dáme do jedné tabulku
$i = 0;
while ($zaznam = mysql_fetch_array($vysledok) ): 
echo '<td valign="top" width="350">'; 
echo $zaznam["small foto"] ; 
echo $zaznam["link"] ; 
echo '<br>'; 
echo $zaznam["description"] ;
echo ($i++ % 2 ? '</tr><tr>':'');  // nový řádek po každém druhém obrázku
endwhile;
echo ($i++ % 2 ? '<td>':''); // pokud jsme v prvním sloupci, zkompletujeme tabulku
echo '</tr></table>'; 
irish cream
Profil *
skusil som, ale nefunguje to.. dava to normalne pod seba..
irish cream
Profil *
ale dik za napad.. pobavim sa s tym a mozno to vyjde
Alphard
Profil
aha, nevšiml jsem si, že je tam ukončené ?>, při změně pořadí příkazů jsem to jen tupě zkopíroval
opravil jsem to, zkuste to teď, musí to jít
irish cream
Profil *
no co k tomu dodat.. iba to, ze Alphard je klasa..

diki.. funguje to paradne..

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: