Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Rodzielenie rekordu
Forum PHP.pl > Forum > Przedszkole
c4ash
Witam.

Zaznacze na poczatku, ze szukalem, ale nie znalazlem odpowiedzi na moje pytanie/zagadnienie.

Chodzi mi o to, ze w jednym rekordzie w bazie MySQL wpisuje dane, rodzielone , i spacja ", ". Problem moj jest moze banalnie prosty, ale nie moge sobie z nim poradzic. Konkretniej chodzi o to, ze w tym rekordzie sa skroty, a wynikiem ma byc zaladowanie w zaleznosci od skrotow ktore tam sa odpowiadajacych obrazkow.
Nie mam stalej ilosci skrotow, wiec trzeba zapetlic. Probowalem z explode, ale albo cos pokichalem, albo to nie to. Ktos ma jakis pomysl? Jesli to nie bedzie problem, to prosilbym z malym przykladem. Jestem poczatkujacy w tym temacie, ale staram sie poglebic swoja wiedze.

Z gory dziekuje.
erix
Pokaż, co zepsułeś.
Burned
Cytat(c4ash @ 14.01.2010, 22:35:07 ) *
Probowalem z explode, ale albo cos pokichalem, albo to nie to.

Pokaż co napisałeś, jaki miał być wynik, a co wyszło.
c4ash
Nic nie wyszlo. A to co napisalem usunalem i zaczalem wertowanie od poczatku.

EDITED.
Dobra, cos spapralem poprzednio, bo dzis jak zrobilem z explode to mi prawidlowo wyswietla juz.

Teraz pozostaje pytanie, jak dopisac najlepiej do skrotu konkretny obrazek? O ile rozdzielenie bylo proste, o tyle teraz jest juz chyba bardziej skomplikowane. W roznych rekordach sa rozne skroty, w roznej kolejnosci. Probuje z if, ale pisanie dla kazdego skrotu tej samej instrukcji, jest troche bez sensu. Czy nie ma jakiegos innego sposobu? Teraz to wyglada tak:
  1. if ($pay[0] == 'lr') {
  2. echo ('foto/lr.gif');
  3. }
  4. elseif ($pay[0] == 'ap') {
  5. echo ('foto/ap.gif');
  6. }

I tak dalej, dla kazdego rekordu w kolko. Jak to mozna ulepszyc?
Burned
Zamiast wielokrotnego używania if/elseif... możesz użyć switch.
W tym konkretnym przypadku można tak:
  1. $file = 'foto/' . $pay[0] . '.gif';
  2. if(file_exists($file))
  3. {
  4. echo($file);
  5. }
  6.  

Czytaj manuala - to z czym sobie nie poradziłeś jest w jednym z początkowych rozdziałów: http://pl.php.net/manual/pl/language.operators.string.php
c4ash
Cytat(Burned @ 15.01.2010, 18:42:38 ) *
Czytaj manuala - to z czym sobie nie poradziłeś jest w jednym z początkowych rozdziałów: http://pl.php.net/manual/pl/language.operators.string.php

Coz, albo zmeczenie, albo przeoczenie. W kazdym razie dziekuje za pomoc. Patrzac na Twoje rozwiazanie mojego problemu przyszlo mi do glowy cos jeszcze innego. Otorz wystarczy umiescic wszystkie gify w jednym katalogu, zapisac nazwy identyczne ze skrotami. Potem wystarczy juz tylko
  1. echo ('<img src="foto/'.$pay[0].'.gif">&nbsp;<img src="foto/'.$pay[1].'.gif">');
I po problemie. Proste, ale sprawilo troche problemow. Dziekuje raz jeszcze.
Burned
Nie ma zaco.
Jeśli masz dużo tych obrazków to może pętla będze lepsza:
  1. <?php
  2. foreach($pay as $img)
  3. {
  4. echo('<img src="foto/' . $img . '.gif">&nbsp;');
  5. }
  6. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.