Zum Inhalt springen

INSERTquery will nicht

Erstellt am 3. Februar 2010 · 2 Antworten · letzte Antwort am 4. Februar 2010

Tags: Frage

Lofesto ·

Ich habe ein Problem mit $GLOBALS['TYPO3_DB']->exec_INSERTquery.
Und zwar möchte "er/sie" nicht mein Array in die Datenbank eintragen.

foreach($this->piVars['oevent'] as $ouid => $status) {
   $check = $GLOBALS['TYPO3_DB']->sql_query( 'select * from events where hidden=0 and deleted=0 and link='.$ouid.' and pid='.$eventlist.' and memberid='.$this->fe_user_data['uid'] );
   $anzahl = $GLOBALS['TYPO3_DB']->sql_num_rows($check);

   $oldevent = $GLOBALS['TYPO3_DB']->sql_query( 'select * from events where hidden=0 and deleted=0 and pid='.$eventlist.' and uid='.$ouid );
   $newevent = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($oldevent);     

   if($status == 'ja' and $anzahl == 0) {                        
      $newevent['link'] = $ouid;                        
      $insert = $GLOBALS['TYPO3_DB']->exec_INSERTquery('events',$newevent);
   }
}

Sehe da keinen Syntaxfehler oder bin ich blind?
das Array newevent ist auch ansprechbar ($newevent['feld']). Er speichert es halt nur nicht in die Datenbank.

jenses ·
Lofesto schrieb

Sehe da keinen Syntaxfehler oder bin ich blind?

Tippe auf Auswahlmöglichkeit 2.

Du übernimmst alle Felder aus $oldevent,
änderst bei Bedarf 'link' und legst versuchst einen neuen Datensatz anzulegen,
mit derselben UID (= UNIQUE ID) wie $oldevent,
das geht natürlich schief.