2 Arrays vergleichen und einträge ind DB anlegen oder löschen

Also wie ich jetzt herraus bekommen habe wird zwar ein array an die funktion übergeben aber die auswertung für das insert schlägt fehlt ich poste mal die dumps.
var_dump vor der übergabe an die funktion:
array(1) { [0]=> array(5) { [0]=> string(1) "9" [1]=> string(2) "10" [2]=> string(1) "6" [3]=> string(1) "1" [4]=> string(1) "3" } }
var_dump nach $ArtiIdInsert = array_diff($artArr, $ArtIdDb);:
array(0) { }

Kann das an $artArr = $artArr[0]; liegen?
 
Was ist der etrste var_dump()?
Wir brauchen an dieser Stelle den var_dump() von $artArr un $ArtIdDb um zu sehen, warum der Array_diff() fehlschlägt
 
var_dump vor der übergabe an die funktion:
array(1) { [0]=> array(5) { [0]=> string(1) "9" [1]=> string(2) "10" [2]=> string(1) "6" [3]=> string(1) "1" [4]=> string(1) "3" } }
var_dump nach $ArtiIdInsert = array_diff($artArr, $ArtIdDb);:
array(0) { }

Kann das an $artArr = $artArr[0]; liegen?

In bezug aufs insert ist es das.
Oder meinst du jetzt beim Delete?
Achso moment
 
ok also es ligt nicht an $artArr = $artArr[0];.
var_dump($ArtIdDb); =>array(5) { [0]=> string(1) "6" [1]=> string(1) "9" [2]=> string(2) "10" [3]=> string(1) "1" [4]=> string(1) "3" }
var_dump($artArr); =>array(5) { [0]=> string(1) "9" [1]=> string(2) "10" [2]=> string(1) "6" [3]=> string(1) "1" [4]=> string(1) "3" }
dann kommt:
$ArtiIdInsert = array_diff($artArr, $ArtIdDb);

var_dump($ArtiIdInsert);(danach) =>array(0) { }
 
Stimmt doch.
$artIdDB = [6, 9, 10, 1, 3] -> sortieren -> [1, 3, 6, 9, 10]
$artArr = [9, 10, 6, 1, 3] -> sortieren -> [1, 3, 6, 9, 10]

Beide identisch. Ergo ist keine Differnez da. Somit stimmt der leere Array.
Es gibt nix für den Insert. Und auch nix für ein Delete.
 
hmm ok,
ja das stimmt, auch die einträge sind so vorhanden.
Ich glaub grade ich bin das Problem, weil ich einen ganz wichtigen punkt irgendwie außer acht gelassen habe.

und zwar meine tabelle benutzerverarbeitung die mir ja auch schon beim delete jetzt steine in den weg geschmissen hat.
:confused:
 
Hmm die lösung ist bestimmt furchtbar einfach und ich seh den wald vor lauter bäume nicht.

Da die komplette abfrage ja benutzerbezogen sein soll, also auch benzerbezogen ein artikel eingefügt oder gelöscht werden soll brauch ich ja noch die ID vom benutzer. Die steht in der tabelle benutzerverarbeitung sowie die id von der tabelle verarbeiten.
 
Die ID solltest du aus der Session haben. Oder wie willst du sonst wissen, wer eingeloggt ist?
 
Wenn ich jetzt wie im beispiel 10 artikel habe und jeden artikel einmal mit einer art verknüpfe (im beispiel sind es 3) dann hätte ich maximal 30 einträge in der tabelle veratbeiten und damit würde nichts mehr eingefügt werden können weil jede kombi ja existiert. Aber in der tabelle benutzerverarbeitung kann ich ja eine id aus verarbeitung x vielen benutzern geben.
 
jaja die hab ich auch als session gespeichert je nach vorheriger auswahl des benutzers,
sonst könnte ich ja auch nicht die artikel checked setzen die der benutzer schon hat
 
Zurück