Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][rozwiązany]Usunięcie dziur z tablicy, co źle robie?
Marr
post
Post #1





Grupa: Zarejestrowani
Postów: 103
Pomógł: 1
Dołączył: 19.08.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Witam, pisałem w innym temacie o mnożeniu elementów tablic jednak jak sie okazuje mój problem sprowadza się do usuwania dziur z tablicy. Postanowiłem się więc za to zabrać i tak:

  1. <?php
  2. $mnoznikorg = $rekord['mnoznik'];
  3.    $mnoznikorg = explode(';',$mnoznikorg);
  4.    $in = 0;
  5.    foreach ($mnoznikorg as $tabelka){
  6.        if ($tabelka != '')
  7.            {
  8.            $tabelka = $tablica[&#092;"$in\"];
  9.            $in++ ;
  10. }            }
  11.    $tablica = implode(';',$tablica);
  12. ?>

Pobieram tablice z bazy która jest w formie stringa z separatorem ; więc exploduję go i przeglądam otrzymaną tablice a podczas tego sprawdzam czy dany element nie jest równy '' (dwa apostrofy, nie cudzysłow) -> jeżeli nie to chce zapisać element do tablicy. Po wyjściu z pętli chciałem skleić otrzymaną tablice w string tak żeby zobaczyć czy mi się udało i dostaje takie cos:

Warning: implode() [function.implode]: Invalid arguments passed in C:\Program Files\WebServ\httpd\system\modules\faktura2.php on line 390

a wg mnie argumenty w tej funkcji są całkiem niekiepskie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Możecie mi powiedzieć co robię źle? Jestem prawie pewien, że robię jakąś elementarną głupotę jednak nie potrafię sobie z nią poradzić.

Ten post edytował Marr 30.09.2008, 12:59:28
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




operujesz na $tablica ktora nigdzie nie jest definiowana
Go to the top of the page
+Quote Post
Marr
post
Post #3





Grupa: Zarejestrowani
Postów: 103
Pomógł: 1
Dołączył: 19.08.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


kurcze, wykaże się tu głupotą ale jak mawia mój profesor głupi jest nie ten co pyta o głupote tylko ten, który kiwa, że rozumie a nie rozumie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Tak więc -> jak mam zadeklarować tą tablicę by to działało? (IMG:http://forum.php.pl/style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




a skad mamy wiedziesz co ty chcesz w tej $tablica miec? Uzywasz jej tak jakby tam cos bylo, wiec chyba powinienes sam wiedziec co tam masz
Go to the top of the page
+Quote Post
Marr
post
Post #5





Grupa: Zarejestrowani
Postów: 103
Pomógł: 1
Dołączył: 19.08.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


nie nie, właśnie chcę zapisać elementy do nowej tablicy, począwszy od indeksu 0 a później go inkrementuje
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




kurcze, ale masz taki kod:
$tabelka = $tablica[$in];

Ewidentnie w tym kodzie cos pobierasz z $tablica. Ja nie mowie o $tabelka tylko mowie o $tablica. Wiec skoro cos stamtad pobierasz to musisz cos miec (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
Marr
post
Post #7





Grupa: Zarejestrowani
Postów: 103
Pomógł: 1
Dołączył: 19.08.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


to ja tu w takim razie czegoś nie rozumiem, całość wygląda tak:
  1. <?php
  2. $zapytanie = mysql_query ("SELECT * FROM zamowienia WHERE id=$getid");
  3.    while ($rekord = mysql_fetch_assoc ($zapytanie)) {
  4.        $id = $rekord['id'];
  5.        $uslugi = $rekord['usluga'];
  6.        $data_zlozenia = $rekord['data_zlozenia'];
  7.        $data_realizacji = $rekord['data_realizacji'];
  8.        $status = $rekord['status'];
  9.        $faktura = $rekord['faktura'];
  10.  
  11.        $usluga = explode(';', $uslugi);
  12.        
  13.    $mnoznikorg = $rekord['mnoznik'];
  14.    $mnoznikorg = explode(';',$mnoznikorg);
  15.    $in = 0;
  16.    foreach ($mnoznikorg as $tabelka){
  17.        if ($tabelka != '')
  18.            {
  19.            $tabelka = $tablica["$in"];
  20.            $in++ ;
  21. }            }
  22.    $tablica = implode(';',$tablica);
  23. ?>

więc wygląda na to ze $tabelka to poszczególny element tablicy $mnoznikorg w foreach czy nie?
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




kurcze, chlopie, no to nie:
$tabelka = $tablica["$in"];
a:
$tablica["$in"] = $tabelka;

patrz w ktora strone przypisujesz

cały czas ci mowie ze cos pobierasz z $tablica to ty nie jazysz ze ty chesz zapisac do $tablica a nie pobrac. Wlacz myslenie, wypij kawe, obudź sie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
Marr
post
Post #9





Grupa: Zarejestrowani
Postów: 103
Pomógł: 1
Dołączył: 19.08.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


<poszedl_po_kawe> dzięki, mówiłem, że jakaś głupota ;] tak czy inaczej fenksy (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif)
Go to the top of the page
+Quote Post
tomm
post
Post #10





Grupa: Zarejestrowani
Postów: 142
Pomógł: 28
Dołączył: 7.04.2008

Ostrzeżenie: (0%)
-----


zamiast 

$tabelka = $tablica["$in"];

powinieneś mieć

$tablica[$in] = $tabelka

czyli dla każdej nie pustej $tabelka dodajesz ją na koniec tablicy $tablica i poxniej ją implodujesz
Go to the top of the page
+Quote Post
Marr
post
Post #11





Grupa: Zarejestrowani
Postów: 103
Pomógł: 1
Dołączył: 19.08.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Tomm niestety, ale Nospor napisał dokładnie to samo, a więc tym samym zgarnął podziękówke (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Dzięki za chęć pomocy tak czy inaczej.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 02:02