Variable nach Zahl durchsuchen und evtl. anhängen

onion

Grünschnabel
Hallo miteinander!

Ich bastle gerade an einem Teilstück meines Skripts, doch ich komm nicht drauf, wie ich es am besten hinbekomme und möchte nachfreagen.

Ich möchte meine Variable "$teststring" (Aufbau: Zahl§Zahl§Zahl...) zuerst nachsehen, ob überhaupt was drin ist, dann ob die Variable "$id" (auch eine Zahl) schon in dem Teststring ist. Wenn nicht, soll sie mit § (dem Trenner) und ihrem Wert (z.B. "43" angehängt werden.
Mein bisheriges Skript sieht so aus.
Wäre schön, wenn mir jemand helfen könnte.

Viele Grüße
onion

PHP:
$teststring = $checker[1][$galerie-1];
$treffer = substr_count($teststring, "§");
if ($treffer == 0) {
	echo "noch keine klicks oder einer";
  if ($teststring == $id) {
  	echo "NO_COUNT";
  }
  else {
    $checker[1][$galerie-1] = $checker[1][$galerie-1]."§".$id;
  }
}
else {
  $tok = strtok ($teststring,"§");
  while ($tok) {
  	if ($tok == $id)
      echo "Wort=$tok<br>";
      $tok = strtok (" ");
  }
  
  $durchlaeufe = $treffer+1;
  for ($i = 0; $i <= $durchlaeufe; $i++) {
    print $i;
	}

  $checker[1][$galerie-1] = $checker[1][$galerie-1]."§".$id;
}
 
PHP:
$array = split("§",$teststring);
$i=0;
while($array[$i]){
   if($id==$array){
       $isdran = 1;
   }
$i++;
}

if($isdran!=1){
   $teststring .= "§".$id;
}
 
Hallo,

danke für den ersten Schritt. Jetzt ist bloß das Problem, dass ich es als eine Variable einer Session übergeben will. $_SESSION[gezaehlt]
leider läuft das nicht so. vielleicht kann mir jemand weiter helfen, denn ich mit sessions sonst noch nicht viel zu tun gehabt.

Viele Grüße
Rainer

PHP:
$lines = $_SESSION[gezaehlt];
foreach ($lines as $line) {
    $line = trim($line);
    list($galerie, $check_bild) = explode("|", $line);
    $checker[0][] = $galerie;
    $checker[1][] = $check_bild;
}
$teststring = $checker[1][$galerie-1];
$treffer = substr_count($teststring, "§");
	echo $treffer;

if ($treffer == 0) {
	echo "noch keine klicks oder einer";
  if ($teststring == $id) {
  	echo "NO_COUNT";
  }
  else {
    $checker[1][$galerie-1] = $checker[1][$galerie-1]."§".$id;
  }
}
else {
  $array = split("§",$teststring);
  $i=0;
  while($array[$i]){
    if($id==$array){
      $isdran = 1;
    }
    $i++;
  }
  if($isdran!=1){
    #$teststring .= "§".$id;
  	$checker[1][$galerie-1] = $checker[1][$galerie-1]."§".$id;
  }

}
 
... leider möchte ich mich nochmal melden, denn auch bei anderen Anordnungen kann ich die angklickten Bilder, die in der $galerie und $id für das entsprechende Bild, nicht aus der Session lesen. Vielleicht wurden sie ja auch gar nicht geschrieben?!?

Mein Problem war, dass sich der Counter sonst bei jedem Klick auf F5 um eines erhöht, was unterbunden werden soll.

Könnte man mit "serialize" und "unserialize" arbeiten?

Wäre über eine kleine Hilfe sehr dankbar,
Rainer
 
Wo speicherst du denn in eine Session Variable ??? Ich sehe da nichts.
z.B.:
$_SESSION[id] = 1234;
 
Hallo tefla,

danke erst mal soweit.

ähh, ich glaub, da liegt das Problem...
ich sollte nach dem Durchlauf mein Mehrdimensionales Array noch so in Form bringen, dass ich es an die $_SESSION[gezaehlt] übergebe.

wie bringr man das am besten hin?

Danke und Gruß
Rainer
 
Zurück