Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Import do bazy
meehow18
post
Post #1





Grupa: Zarejestrowani
Postów: 102
Pomógł: 0
Dołączył: 10.01.2010

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


Witam,
mam problem z dodaniem rekordów do bazy. Chodzi o import przez formularz textara. Użytkownik może podać dane w następujący sposób:

Opcja 1:
email@adres, name1
email2@adress, name2
email3@adress, name3
opcja 2:
email@adres
emai2@adres
emai3@adres

Nie wiem dlaczego, ale jak użytkownik poda e-mail, name to działa, a sam e-mail nie.

Mój kod
  1. $mail = explode("\n", $this->input->post('import'));
  2. $dlugosc=count($mail);
  3. for($i=1;$i<=$dlugosc;$i++){
  4.  
  5. $im=explode(",", $mail[$i]);
  6. if($im[1]==null)$im[1]=' ';
  7. $new = array
  8. (
  9.  
  10. 'email_zapisanego' => $im[0],
  11. 'imie' => $im[1]
  12. );
  13. $this->crud_model->save_user('subskrybenci',$new);
  14.  


Używam frameworka CI. Z góry dziękuje zapomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
jacobson
post
Post #2





Grupa: Zarejestrowani
Postów: 468
Pomógł: 36
Dołączył: 14.12.2010

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


daj przed warunkiem if np var_dump($im[1]) kiedy nie masz wpisanego imienia.
Go to the top of the page
+Quote Post
meehow18
post
Post #3





Grupa: Zarejestrowani
Postów: 102
Pomógł: 0
Dołączył: 10.01.2010

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


Rekordy się dodają, ostatni rekord jest zawsze pusty.
I wyskakują błędy

Cytat
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 1
Filename: controllers/panel.php
Line Number: 345
NULL
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 1
Filename: controllers/panel.php
Line Number: 346
string(3) "asd" string(3) "asd"
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 4
Filename: controllers/panel.php
Line Number: 344
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 1
Filename: controllers/panel.php
Line Number: 345
NULL
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 1
Filename: controllers/panel.php
Line Number: 346


Dotyczą tych 3 linijek

$im=explode(",", $mail[$i]);
var_dump($im[1]);
if($im[1]==null)$im[1]=' ';
Go to the top of the page
+Quote Post
toaspzoo
post
Post #4





Grupa: Zarejestrowani
Postów: 778
Pomógł: 84
Dołączył: 29.07.2010
Skąd: Gliwice / Pławniowice Mistrz niezmordowanej klawiatury.

Ostrzeżenie: (20%)
X----


... [$i + 1] ...
Go to the top of the page
+Quote Post
meehow18
post
Post #5





Grupa: Zarejestrowani
Postów: 102
Pomógł: 0
Dołączył: 10.01.2010

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


Przepraszam bardzo uprzejmie, nie chciałbym Cię urazić, jednakowoż nie potrafię zrozumieć o co chodziło w twoim uprzednim poście. Czy mógłbyś mi pokrótce wyjaśnić, o ile oczywiście masz taką ochotę i chęć pomocy mi uniżonemu i pytającemu o pomoc

Ten post edytował meehow18 26.11.2011, 23:34:22
Go to the top of the page
+Quote Post
Dominis
post
Post #6





Grupa: Zarejestrowani
Postów: 77
Pomógł: 19
Dołączył: 13.02.2010

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


Spróbuj tak:

  1. $zmienna = "email@adres,sad \n email@adres22,asd";
  2.  
  3. $mail = explode("\n", $zmienna);
  4. $dlugosc=count($mail);
  5.  
  6. for($i=0;$i<$dlugosc;$i++){
  7.  
  8. $im=explode(",", $mail[$i]);
  9. if(!isset($im[1]))
  10. $im[1]=' ';
  11. $new = array(
  12. 'email_zapisanego' => $im[0],
  13. 'imie' => $im[1]);
  14.  
  15. echo $new['email_zapisanego'].'<br />';
  16. echo $new['imie'].'<br />';
  17. }


Pododawaj sobie to co potrzebujesz.
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: 3.10.2025 - 07:41