php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 22-05-2007, 10:47
rönee
 Banned
Links : Onlinestatus : rönee ist offline
Registriert seit: Nov 2004
Ort: Switzerland
Beiträge: 283
rönee ist zur Zeit noch ein unbeschriebenes Blatt
Standard Foreach Blackout

Hi Folks

Îch habe da ein kleines Blackout. Folgendes: in einem Formular habe ich Checkboxen eingebunden und welche ich mittels Array auslese, wenn aber das Formular nicht korrekt ausgefüllt wurde, sollten die gewählten Checkboxen auch aktiv sein (checked). Ich habe nun mit einer Foreach Schlaufe das array ausgelesen und will nun die input checkboxen mittels if ($var == Inhalt) else anzeigen lassen. Nun musst ich feststellen das die checkboxen vevielfacht werden, weil jeder Wert neu durch die Schlaufe läuft. Wo ist mein Gedankensfehler, wie kann ich das umgehen?

PHP-Code:
foreach($checkbox as $var)
{
  if (
$var == "Inhalt")
  {
  echo
"<input type="checkbox" value="Inhalt" checked name="checkbox[]" style="border:0;" />Inhalt"
  }
  else
  {
echo
"<input type="checkbox" value="Inhalt" name="checkbox[]" style="border:0;" />Inhalt";
  }

Mit Zitat antworten
  #2 (permalink)  
Alt 22-05-2007, 10:51
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

bei dir haben alle checkboxen den gleichen wert bei "value". dieser steht dann in $var drin. das scheint nicht korrekt zu sein.

p.s. gib mal bei google "register globals" ein und finde heraus, was du besser machen kannst.
Mit Zitat antworten
  #3 (permalink)  
Alt 22-05-2007, 10:58
rönee
 Banned
Links : Onlinestatus : rönee ist offline
Registriert seit: Nov 2004
Ort: Switzerland
Beiträge: 283
rönee ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Neine haben sie nicht. Ich habe nur eine Beispiel aufgeschrieben.

PHP-Code:
$_POST['checkbox'];
foreach(
$checkbox as $var)
{
  if (
$var == "Inhalt1")
  {
  echo
"<input type="checkbox" value="Inhalt1" checked name="checkbox[]" style="border:0;" />Inhalt1"
  }
  else
  {
  echo
"<input type="checkbox" value="Inhalt1" name="checkbox[]" style="border:0;" />Inhalt1";
  }
  if (
$var == "Inhalt2")
  {
  echo
"<input type="checkbox" value="Inhalt2" checked name="checkbox[]" style="border:0;" />Inhalt2"
  }
  else
  {
  echo
"<input type="checkbox" value="Inhalt2" name="checkbox[]" style="border:0;" />Inhalt2";
  }
  if (
$var == "Inhalt3")
  {
  echo
"<input type="checkbox" value="Inhalt3" checked name="checkbox[]" style="border:0;" />Inhalt3"
  }
  else
  {
  echo
"<input type="checkbox" value="Inhalt3" name="checkbox[]" style="border:0;" />Inhalt3";
  }
...
usw.

Mit Zitat antworten
  #4 (permalink)  
Alt 22-05-2007, 11:01
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

was bedeutet die tiefsinnige zeile mit $_POST?

es ist immer noch nicht korrekt. du gehst durch _alle_ checkboxen.

so laufen 2,3,4,...,n-te checkbox in den ersten else-block.
dann laufen 1,3,4,5,...,n-te checkbox in den zweiten else block, etc.

das ist auch falsch.

was willst du eigentlich erreichen?
Mit Zitat antworten
  #5 (permalink)  
Alt 22-05-2007, 11:03
rönee
 Banned
Links : Onlinestatus : rönee ist offline
Registriert seit: Nov 2004
Ort: Switzerland
Beiträge: 283
rönee ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das das flasch ist und wie es sich verhält weiss ich auch, ich suche ein Tipp wie ich, das was ich im ersten Beitrag beschrieben habe, erreichen kann!

Besten Dank

P.S. Mit register globals hat das nicht viel zu tun bei mit denn diese sind immer auf off geschaltet!
Mit Zitat antworten
  #6 (permalink)  
Alt 22-05-2007, 11:09
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von rönee
P.S. Mit register globals hat das nicht viel zu tun bei mit denn diese sind immer auf off geschaltet!
Wenn du wirklich mittels $checkbox auf die Werte von Formularelemten mit dem Namen "checkbox[]" zugreifst, dann hat das sehr wohl etwas mit rg=on zu tun - oder du zeigst uns immer noch nicht den Code, den du wirklich verwendest.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #7 (permalink)  
Alt 22-05-2007, 11:10
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
P.S. Mit register globals hat das nicht viel zu tun bei mit denn diese sind immer auf off geschaltet!
ich kaufe ein paar satztrennungszeichen. und verkaufe ein paar präpositionen.

zu deinem problem: wenn du die checkboxen aus einem array generierst, so brauchst du auch für diese überprüfung dieses array. dieses läufst du durch und setzst die checked-option nur auf "checked", wenn das element in $_POST['checkbox'] aufzufinden ist.
Mit Zitat antworten
  #8 (permalink)  
Alt 22-05-2007, 11:11
rönee
 Banned
Links : Onlinestatus : rönee ist offline
Registriert seit: Nov 2004
Ort: Switzerland
Beiträge: 283
rönee ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ja, der Wert heisst im Original $checkbox_auswahl. - Sorry
Mit Zitat antworten
  #9 (permalink)  
Alt 22-05-2007, 11:16
rönee
 Banned
Links : Onlinestatus : rönee ist offline
Registriert seit: Nov 2004
Ort: Switzerland
Beiträge: 283
rönee ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ja, der Satz war unglücklich, sollte heissen:

P.S. Mit register globals hat das bei mir nicht viel zu tun , denn diese sind immer auf off geschaltet!

Ja, Penizilin das habe ich ja versucht mit meinem Code
Mit Zitat antworten
  #10 (permalink)  
Alt 22-05-2007, 11:17
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

woher kommt $checkbox?
Mit Zitat antworten
  #11 (permalink)  
Alt 22-05-2007, 11:37
rönee
 Banned
Links : Onlinestatus : rönee ist offline
Registriert seit: Nov 2004
Ort: Switzerland
Beiträge: 283
rönee ist zur Zeit noch ein unbeschriebenes Blatt
Standard

$checkbox_auswahl und es kommt aus dem Formular

wenn ich die Werte mittels echo ausgeben sind auch alle vorhanden!
Mit Zitat antworten
  #12 (permalink)  
Alt 22-05-2007, 11:39
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

dann stimmen diese zwei aussagen wohl nicht:
Zitat:
P.S. Mit register globals hat das bei mir nicht viel zu tun , denn diese sind immer auf off geschaltet!
und auf mein "... so brauchst du auch für diese überprüfung dieses array. ":
Zitat:
Ja, Penizilin das habe ich ja versucht mit meinem Code
du sollst das array durchlaufen, aus dem die checkboxen generiert werden.
und nicht irgendwas aus dem formular.
Mit Zitat antworten
  #13 (permalink)  
Alt 22-05-2007, 11:43
rönee
 Banned
Links : Onlinestatus : rönee ist offline
Registriert seit: Nov 2004
Ort: Switzerland
Beiträge: 283
rönee ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Aber mit foreach durchlaufe ich doch das array? Und warum machst Du kein konkretes Beispiel, in einbezug meines Codes? Ich weiss nicht was Du mienst oder ich glaube ich habe das ja schon so gemacht.

Und übrignes sind die register globals auf meinem Server auf off!!!!!!!!!
Mit Zitat antworten
  #14 (permalink)  
Alt 22-05-2007, 11:48
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Aber mit foreach durchlaufe ich doch das array?
noch mal in zeitlupe:
ich sage:
Zitat:
wenn du die checkboxen aus einem array generierst, so brauchst du auch für diese überprüfung dieses array. dieses läufst du durch und setzst die checked-option nur auf "checked", wenn das element in $_POST['checkbox'] aufzufinden ist.
du sagst:
Zitat:
... das habe ich ja versucht mit meinem Code
ich frage:
Zitat:
woher kommt $checkbox?
und du antwortest
Zitat:
... es kommt aus dem Formular
noch mal: die foreach schleife soll das array durchlaufen, aus welchem die checkboxen ursprünglich stammen.
Mit Zitat antworten
  #15 (permalink)  
Alt 22-05-2007, 11:55
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

PHP-Code:
foreach ($checkboxes as $i => $c) {
    echo 
'<input type="checkbox" value="1" name="cb['.$i.']" '
         
.(isset($_POST['cb'][$i] ?  'checked' '').' /> '.$c

Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:56 Uhr.