das mit dem uninitalisierten array ist mir kurz danach auch
aufgefallen. trotzdem danke.. die idee mit dem this->Abo->id find ich
noch besser.
wie gefällt denn der code? sollte ich nicht die logic mehr in das
model legen oder ein helper oder sowas bauen ?

grüße
chris

On May 13, 1:10 pm, "Timo Derstappen" <[EMAIL PROTECTED]> wrote:
> Wie es scheint, hast du $db nicht initialisiert und speicherst
> vermutlich immer ein altes $db['Abo']['id']. Ansonsten sollte das mit
> create() so funktionieren, wie du es gebaut hast.
>
> Du kannst auch direkt $this->Abo->id setzen und die ID aus dem $db
> Array lassen. create() setzt $this->Abo->id dann immer wieder auf
> null.
>
> Gr��e,
> Timo
>
> 2008/5/13 chrispie <[EMAIL PROTECTED]>:
>
>
>
>
>
> >  Hallo Leute, ja - das ist mein erster post hier und ja ich stelle
> >  direkt eine frage :)
> >  seit kurzem besch�ftige ich mich mit cake php und ich w�rd gern wissen
> >  wie ihr folgendes problem gel�st h�ttet:
>
> >  DB: id | name | description
>
> >  nun m�chte ich aus einer cvs datei spalten in die datenbank schreiben.
> >  falls ein eintrag mit dem namen bereits exestiert soll ein update
> >  gemacht werden, ansonsten ein insert. easy as that.
>
> >         function import(){
> >                 $row = 1;
> >                 $handle = fopen ("/dadai.cvs","r");
>
> >                 while ($data = fgetcsv ($handle, 1000, ";")) { // Daten 
> > werden aus
> >  der Datei
> >                                                                // in ein 
> > Array $data
> >  gelesen
> >                    $num = count ($data);                       // Felder im 
> > Array
> >  $data
> >                    $cvs[]=$data[3];                                         
> >    //
> >  werden gez�hlt
> >                    $row++;
> >                 // nur f�r aboservice die ids
> >                 $db['Abo']['name']=$data[3];
> >                 $db['Abo']['description']=$data[10];
>
> >                 //$conditions = "Abo.name = '".$data[3]."'";
> >         //      $this->recursive = -1;
>
> >  // hier gehts los !! ----------------------
> >                 $result = $this->Abo->findByName($data[3]);
> >                 if (isset($result['Abo']['id']))
> >         {
> >                         echo $result['Abo']['id']."- ";
> >                         //print_r($result);
> >                         $db['Abo']['id']=$result['Abo']['id'];
> >                         
> > if(strlen($db['Abo']['description'])<strlen($result['Abo']
> >  ['description'])){
> >                                 $db['Abo']['description']='*';
> >                         }
> >                         $this->Abo->save($db);
> >                         //echo "alt";
> >                 } else {
> >                         //echo "neu";
> >                         $this->Abo->create();
> >                         $this->Abo->save($db);
> >                 }
> >                 }
>
> >         }
>
> >  nur leider will die sache nicht ganz funktionieren. der mysql-debug
> >  spuckt mir dann aus, dass st�ndig ein eintrag geupdated wird. und zwar
> >  immer der gleiche.
>
> >  vielleicht ist ja auch die logik meines codes nicht ganz in ordnung.
> >  bin �ber jede r�ckmeldung froh !
>
> --
> Timo Derstappen
>
> http://teemow.com
> mailto:[EMAIL PROTECTED]
--~--~---------~--~----~------------~-------~--~----~
Bitte bei Fragen immer auch die aktuell verwendete cakePHP Version angeben und
wenn möglich auch das verwendete Betriebssystem und die PHP Version. Danke.
Sie erhalten diese Nachricht, weil Sie Mitglied sind von Google Groups-Gruppe 
"CakePHP-de für deutsche CakePHP Entwickler".
 Für das Erstellen von Beiträgen in dieser Gruppe senden Sie eine E-Mail
an [email protected]
 Um sich von dieser Gruppe abzumelden, senden Sie eine E-Mail an [EMAIL 
PROTECTED]
 Weitere Optionen finden Sie in dieser Gruppe unter 
http://groups.google.com/group/cakephp-de?hl=de
-~----------~----~----~----~------~----~------~--~---

Antwort per Email an