Sorgenkind mech: string = string . string geht nich?

nabend

ich hoffe hier hat jemand ne antwort, denn ich grüble schon stunden drüber wo mein fehler liegt .......

folgendes problem:

aus ner mysql-db wird n string ausgelesen und in ein 2-dimensionales array geteilt
so, jedes element 0 der 2. dimension hat jetz eine einzigartige positions-id
jetz wird der ursprüngliche string aus dem array neu zusammengesetzt, mit dem unterschied, dass ein element an einer bestimmten position hinzugefügt wird

so, das ganze funktioniert aber aus einem mir unbekanntem grunde nicht
denn am schluss existiert dann nur noch ein einziges element im string .... und zwar das, das als letztes schon existierte

hier die funktion:

{
  if($einftyp=="a") $selfrom="artikel";
  if($einftyp=="b") $selfrom="modelle";
  if(isset($selfrom))
  {
   $einfpreis=mysql_query("select " . $preist . " from ".$selfrom." where id='".$einfartnr."'");
   $einfpreis=mysql_fetch_array($einfpreis,MYSQL_ASSOC);
   // if($einfpreis) $einfpreis=$einfpreis[0];
  }
  $vorhandene=mysql_query("select rsatz from rechnungen where id=".$rid);
  $vorhandene=mysql_fetch_array($vorhandene,MYSQL_ASSOC);
  $vorhandene=$vorhandene['rsatz'];
  if($vorhandene!="")
  {
   $rsatz=explode("<<>>",$vorhandene);
   $i=0;
   $k=0;
   $newrsatz="";
   foreach($rsatz as $xxxx => $xxxxxx)
   {
    $rsatz[$i]=explode("<<>",$rsatz[$i]);
    echo $i . "<br>";
    echo $newrsatz . "<br>";
    if($rsatz[$i][0]==$einfid)
    {
     if($i+1==1) $anfang=""; else $anfang="<<>>";
     $newrsatz=$newrsatz . $anfang . $i+1 . "<<>" . $einftyp . "<<>" . $einfartnr . "<<>0<<>0<<>" . $einfmenge . "<<>" . $einfpreis[$preist] . "<<>>";
     $k=1;
    }
    echo $newrsatz . "<br>";
    foreach($rsatz[$i] as $aaaa => $wert)
    {
     if($i+1+$k==1) $anfang=""; else $anfang="<<>>";
     if($aaaa==0) $newrsatz=$newrsatz . $anfang . $i+1+$k;
     else
     {
      $newrsatz=$newrsatz . "<<>" . $wert;
     }
    }
    $i++;
    echo $newrsatz . "<br>";
   }
   $query=mysql_query("update rechnungen set kunde='".$ansprechpartnername."', kopf='".$kopftext."', kundenr='".$markkunde."', typ='".$dtyp."', rsatz='" . $newrsatz . "', mwst='".$mwst."' where id='" . $rid . "'");

}
 }

ein testdurchlauf ergab durch die enthaltenen echo-fkt:

0

1<<>a<<>12021<<>0<<>0<<>1<<>
1
1<<>a<<>12021<<>0<<>0<<>1<<>
1<<>a<<>12021<<>0<<>0<<>1<<>
2<<>a<<>13025<<>0<<>0<<>1<<>
2
2<<>a<<>13025<<>0<<>0<<>1<<>
2<<>a<<>13025<<>0<<>0<<>1<<>
3<<>a<<>13245<<>0<<>0<<>1<<>
3
3<<>a<<>13245<<>0<<>0<<>1<<>
4<<>a<<>10000<<>0<<>0<<>1<<>33.04<<>>  // das sollte eingefügt werden
6<<>a<<>13462<<>0<<>0<<>1<<>

eigentlich müsste ja sich pro durchlauf der string erweitern ... tut er nur nich ;(

weiß jemand rat?

bis dahin

  1. Hi

    ich weiss zwr nich was des da genau tut weil ich noch ein nooob bin (naja n bissl kann ich aschon)

    aber 1 mal hab ich 3 stunden einen fehler gesucht dabei war des was ganz einfaches ich hatte ' statt ` geschrieben :)

    villeicht is bei dir ja auch son kleinkram

    mfg  Alex

    1. nach diesem "Kleinkram" hab ich schon ausschau gehalten,
      doch noch nix gefunden ........... und es treibt mich zu weißglut!
      *heulenkönnt*

      bis dahin

      gruß

  2. Hi,

    $newrsatz=$newrsatz . $anfang . $i+1 . "<<>" . $einftyp . "<<>" . $einfartnr . "<<>0<<>0<<>" . $einfmenge . "<<>" . $einfpreis[$preist] . "<<>>";

    ich unterstelle mal, dass die Operatoren . und + gleichwertig sind und daher von links nach rechts durchgegangen werden. Damit hast Du dann "$newrsatz.$anfang.$i", addierst zu diesem Ergebnis 1, und fügst anschließend die restlichen Strings hinzu. Klammerung der Addition dürfte helfen.

    Cheatah

    --
    X-Will-Answer-Email: No
    1. Hi,

      $newrsatz=$newrsatz . $anfang . $i+1 . "<<>" . $einftyp . "<<>" . $einfartnr . "<<>0<<>0<<>" . $einfmenge . "<<>" . $einfpreis[$preist] . "<<>>";

      ich unterstelle mal, dass die Operatoren . und + gleichwertig sind und daher von links nach rechts durchgegangen werden. Damit hast Du dann "$newrsatz.$anfang.$i", addierst zu diesem Ergebnis 1, und fügst anschließend die restlichen Strings hinzu. Klammerung der Addition dürfte helfen.

      Cheatah

      boah ich könnt dich knutschen!
      aber ich glaube da hätte meine freundin was dagegen, von daher: DANKE
      ich hab bestimmt 5 - 6 stunden dran geknobelt warum das nich funzen soll ;)

      jetz funzt das einwandfrei!

      in dankbarkeit

      1. Hi,

        boah ich könnt dich knutschen!

        ih, werd ich davon nicht schwanger? :-)

        aber ich glaube da hätte meine freundin was dagegen,

        Okay, dann machen wir einen Deal: _Sie_ soll mich knutschen. Einverstanden?

        ich hab bestimmt 5 - 6 stunden dran geknobelt warum das nich funzen soll ;)

        Wald, Bäume :-)

        Cheatah

        --
        X-Will-Answer-Email: No