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 Bewertung: Bewertung: 38 Stimmen, 5,00 durchschnittlich.
  #16 (permalink)  
Alt 28-06-2011, 11:25
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Problem: Von z. B. 5 Checkboxen im Formular kommen nur die an, die auch aktiviert sind (z. B. nur 2). Wenn man also die Post-Daten durchrattert, werden immer die ausgeschalteten fehlen. Dein Script kennt die Checkboxen aber und natürlich auch deren Bedeutung, denn es muss die Formulardaten ja auch verarbeiten.

Lösung: Erstelle für jedes erwartete Checkbox-Feld eine Boolean-Variable mit dem Wert false. Wenn die Post-Variable für diese Checkbox gesetzt ist, ändere den Wert auf true. Gruppen von Checkboxen lassen sich ebenso mit Gruppen von Variablen abbilden – also mit Arrays.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #17 (permalink)  
Alt 28-06-2011, 11:56
Ingo71
 Registrierter Benutzer
Links : Onlinestatus : Ingo71 ist offline
Registriert seit: Mar 2011
Beiträge: 10
Ingo71 befindet sich auf einem aufstrebenden Ast
Standard

Danke für deine Hilfe.

Das übersteigt wohl aber gerade meinen php Horizont. ^^

Du meinst bestimmt deine Erklärung mit isset.
Aber hab leider überhaupt kein Plan, wo und wie ich das unterbringe.

Gruß
Ingo
Mit Zitat antworten
  #18 (permalink)  
Alt 28-06-2011, 12:54
Ingo71
 Registrierter Benutzer
Links : Onlinestatus : Ingo71 ist offline
Registriert seit: Mar 2011
Beiträge: 10
Ingo71 befindet sich auf einem aufstrebenden Ast
Standard

Ne ich bekomms einfach nicht hin.
Es spuckt nie aus was ich möchte.
Kannst mir nochmal unter die Arme greifen??

Danke
Gruß Ingo
Mit Zitat antworten
  #19 (permalink)  
Alt 28-06-2011, 13:06
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Versuch's mal mit
HTML-Code:
<input ... name="status[$id]" .../>
dann hast du die korrekte Zuordnung über die ID, ansonsten verrutscht ja alles, weil eben nur die mitgeschickt werden, die angetickt sind:

Code:
id:     2, 3, 4, 10, 12
status: 0, 1, 0,  0,  1
ergibt den Request-Body
Code:
id[]=1&id[]=2&id[]=3&id[]=4&id[]=10&id[]=12&status[]=on&status[]=on
ergibt in PHP
PHP-Code:
array(
    
"id" => array(
        
=> 2,
        
=> 3,
        
=> 4,
        
=> 10,
        
=> 12,
    ),
    
"status" => array(
        
=> "on"// statt 1 => "on"
        
=> "on"  // statt 4 => "on"
    
)

Wenn du aber im Namen des Feldes die ID als Array-Index benutzt, kann das nicht passieren.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!

Geändert von AmicaNoctis (28-06-2011 um 13:10 Uhr)
Mit Zitat antworten
  #20 (permalink)  
Alt 28-06-2011, 15:03
Ingo71
 Registrierter Benutzer
Links : Onlinestatus : Ingo71 ist offline
Registriert seit: Mar 2011
Beiträge: 10
Ingo71 befindet sich auf einem aufstrebenden Ast
Standard

Das sieht schon mal vielversprechender aus ^^.

Hab den Code geändert in:

PHP-Code:
     echo "<td align=\"left\"><input type=\"hidden\" name=\"id[$id]\" readonly value=\"$id\" size=\"5\"/></td>";
     echo 
"<td align=\"center\"><b>SPIELTAG : </b><input type=\"text\" name=\"gameday[$id]\" readonly value=\"$gameday\" size=\"2\"/</td>";
     echo 
"<td align=\"left\"><input type=\"checkbox\" name=\"status[$id]\" value=\"$id\"/></td>"
Das ergibt folgende Ausgabe:
[IMG]http://www.****************-funbolzer.de/images/array_freigeben.gif[/IMG]

Nur gibt er mit dem Folgeformular imme rnoch keine Spieltage frei:

PHP-Code:
  $id $_POST["id"];
  
$liga $_POST["liga"];
  
$gameday $_POST["gameday"];
  
$status $_POST["status"]; 
  
  
print_r ($id);
  
print_r ($status);
  
print_r ($gameday);
  
  
  for(
$i=0$i<count($id); $i++)
  {
  
$sqlab_update mysql_query("UPDATE fmo_ligen_spieltage SET status = '1' WHERE id = '$status[$i]'") OR die(mysql_error()); 
Irgendwo liegt der Hase noch begraben.
Mit Zitat antworten
  #21 (permalink)  
Alt 28-06-2011, 15:12
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

print_r($status) sollte dir doch sehr schön zeigen, dass der Array-Schlüssel jeweils die ID ist, oder etwa nicht? Wie kommst du dann auf die Idee, du könntest dir auf einmal die Werte eines assoziativen Arrays mit so 'ner blöden for-Schleife rausholen, die einfach stur fortlaufende numerische Schlüssel erzeugt? Warum nimmst du nicht foreach, was viel bequemer über ein Array iteriert und dir sogar noch die richtigen Schlüssel mitliefert?

Warum setzt du im SQL-Statement status auf 1 wenn die ID = 'on' ist? Das ergibt doch keinen Sinn. Sieh dir bitte nochmal ganz genau an, was print_r dir ausgibt, denk darüber nach, wie du das sinnvoll verwursten kannst und lass dir um Himmels Willen dein Statement mit echo ausgeben, bevor du es abschickst. EDIT: Achso, weil der Wert wieder die ID ist. Naja, ich würde das ändern, sonst zieht man aufgrund dieser verwirrenden Zusammenhänge noch falsche Schlüsse. Lass bei den Checkboxen einfach das value-Attribut weg.

Dann wäre noch die Sache mit SQL Injections, die du mit mysql_real_escape-string ohne viel Aufwand verhindern kannst.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!

Geändert von AmicaNoctis (28-06-2011 um 15:17 Uhr)
Mit Zitat antworten
  #22 (permalink)  
Alt 28-06-2011, 15:49
Ingo71
 Registrierter Benutzer
Links : Onlinestatus : Ingo71 ist offline
Registriert seit: Mar 2011
Beiträge: 10
Ingo71 befindet sich auf einem aufstrebenden Ast
Standard

Das hört sich gerade nach nem verdienten Granatenanschiß an ^^
Hab ich wohl verdient, aber ich blick überhaupt nix mehr.

Trotzdem für deine Geduld und Mühe.

Vieleicht komme ich mit bischen Abstand auf den Trichter, wie du es meinst.

Gruß
Ingo
Mit Zitat antworten
  #23 (permalink)  
Alt 28-06-2011, 15:54
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Nimm's nicht persönlich, ich meinte es nicht böse.

Das mit der Auszeit klingt sinnvoll.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
Antwort

Lesezeichen


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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Bestimmte Spalten MySQL,überprüfen ob Wert==0,Gefundene Spalten in Array speichern... CPU-Power PHP Developer Forum 4 11-04-2007 06:51
Werte in ein Array speichern und in mySQl serialisieren phpscripter PHP Developer Forum 3 01-09-2005 14:10
[PHP + MYSQL] Daten in Array speichern aKuT PHP Developer Forum 14 20-05-2005 17:29
array --> key u. wert, mysql u. php V.F.A PHP Developer Forum 7 08-04-2004 23:39
Array in MySQL speichern Mr Agent X SQL / Datenbanken 2 30-09-2003 21:37

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 20:42 Uhr.