php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.01.2012, 16:07  
Benutzer
 
Registriert seit: 04.12.2011
Beiträge: 56
PHP-Kenntnisse:
Anfänger
myoddo befindet sich auf einem aufstrebenden Ast
Standard CheckBox fehler lokalisieren,

Hallo,
und wieder einmal eine Frage.
Ich hoffe ich gehe euch nicht auf den Sender!

Nachfolgend habe ich einen Test Code.
Beim ersten Aufruf kommt eine Fehlermeldung:

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /homepages/42/d11869892/htdocs/bilgo/mysql-xyz/mysql-checkbox-xyz02.php on line 11

Betätige ich den Submit –Button mit dem Haken bei Nane Beschreibung.
Wird die if Abfrage korrekt ausgeführt und die Fehlermeldung verschwindet.
PHP-Code:
<?php

$Hund 
$_GET['Hund'];

echo 
"<form action =\"mysql-checkbox-hbh02.php\" method=\"GET\">";
echo
"<input type=\"checkbox\" name=\"Hund[]\" value=\"Nane\"> Nane Beschreibung 1 <br />";
echo
"<input type=\"checkbox\" name=\"Hund[]\" value=\"Oddo\"> Oddo Beschreibung 2<br />";
echo
"<input type=\"checkbox\" name=\"Hund[]\" value=\"Lexa\"> Lexa Beschreibung 3<br />";
echo
"<input type=\"checkbox\" name=\"Hund[]\" value=\"Hila\"> Hila Beschreibung 4<br />";

if (
in_array ('Nane' $Hund)) { echo "bin ich gut !?"; }  // das ist Linie 11


echo"<br /><input type=\"submit\" name=\"submit\" value=\"senden\"><br />";

?>
myoddo ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 07.01.2012, 16:16  
Erfahrener Benutzer
 
Registriert seit: 06.04.2009
Beiträge: 251
PHP-Kenntnisse:
Fortgeschritten
BlackSpirit befindet sich auf einem aufstrebenden Ast
BlackSpirit eine Nachricht über MSN schicken
Standard

Hi,
in_array -> bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )

Das heißt $Hund muss ein Array sein, wenn aber keine Checkbox an-gehackt ist, wird auch kein Array Übergeben.
-> isset und! is_array sollten sicher helfen.
PHP-Code:
if(isset($Hund) && //bricht hier ab wenn $_GET['Hund'] nicht existiert
   
is_array($Hund) && //hier wenn es kein Array ist
   
in_array ('Nane' $Hund)) //und hier wenn 'Nane' nicht drin ist
{
    echo 
"bin ich gut !?"

lg
__________________
Lerne, Software zu schätzen und bedanke dich für die positiven Aspekte, bevor der Entwickler die Motivation zum weiterentwickeln verliert.
BlackSpirit ist offline   Mit Zitat antworten
Alt 07.01.2012, 16:16  
php.de
Gast
 
Beiträge: n/a
Standard

Mach ein var_dump($_GET); und hake dann nichts an, wenn du das Formular abschickst. Dann sollte alles klar sein.
  Mit Zitat antworten
Alt 08.01.2012, 15:34  
Benutzer
 
Registriert seit: 04.12.2011
Beiträge: 56
PHP-Kenntnisse:
Anfänger
myoddo befindet sich auf einem aufstrebenden Ast
Standard

Hallo,
irgendwie raff ich das mit den arrey´s noch nicht so richtig.
Das
var_dump($Hund);
War schon mal ein guter Tipp.
Ebenso die Hinweise von BlackSpirit
Danke nochmals.

Nachdem der Sonntag nun aber bald zu Ende ist und ich immer noch nicht merklich weitergekommen bin. Hier noch einmal ein Hilferuf.
Bewirken mochte ich, dass checked="checked" an den angehakten Feldern beim Zweitaufruf gesetzt ist. Die echo’s die im Code sind habe ich nur zum Testen eingebaut.
Kann die Sache noch nicht so richtig nachvollziehen. (Bin aber zuversichtlich „Gut Ding braucht Weil“
PHP-Code:
<?php

$Hund 
$_GET['Hund'];

if (empty (
$Hund))

    {
    echo 
"<form action =\"mysql-checkbox-xyz02.php\" method=\"GET\">";
    echo
"<input type=\"checkbox\" name=\"Hund[]\" value=\"Nane\"> Nane Beschreibung 1 <br />";
    echo
"<input type=\"checkbox\" name=\"Hund[]\" value=\"Oddo\"> Oddo Beschreibung 2<br />";
    echo
"<input type=\"checkbox\" name=\"Hund[]\" value=\"Lexa\"> Lexa Beschreibung 3<br />";
    echo
"<input type=\"checkbox\" name=\"Hund[]\" value=\"Hila\"> Hila Beschreibung 4<br />";
    echo
"<br /><input type=\"submit\" name=\"submit\" value=\"senden\"><br />";
    }

if (isset (
$Hund))
    {
    
    foreach (
$Hund as $Hund_wert => $Hund_Name)
    echo
"<li> $Hund_Name </li>";
    if (
in_array ($Hund_wert['Nane'])) 
    {
    echo 
"Hallo Nane"// zum testen 
    
echo 'checked="checked"'
    } 
    
    
        
    
    
    
var_dump($Hund);

?>
myoddo ist offline   Mit Zitat antworten
Alt 08.01.2012, 17:38  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

checked="checked" gehört in das Input-Element, nicht irgendwo hin.

http://php.de/wiki-php/index.php/For..._Auswahlfelder
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Zip Archive mit PHP erstellen - Kein Fehler, aber ZIP Archiv ist nicht da robat PHP Tipps 2010 34 09.03.2011 20:17
[Erledigt] PDO - Checkbox Inchie PHP Einsteiger 2 02.03.2011 17:08
Sqlite3 "Update", Fehler bei mehr als 1 "Set" Anweisung skerge12 Datenbanken 4 21.12.2010 09:45
Funktion rename() auf USB-Festplatten bringt Fehler Wing PHP Tipps 2010 13 16.07.2010 23:00
MySQL: Fehler 10046 keine Datenbank ausgewählt aschunk Datenbanken 5 22.04.2010 12:27
[Erledigt] Syntax Error - Wo ist der Fehler? Extremefall PHP Tipps 2009 5 14.12.2009 17:46
[Erledigt] vista, windows update Fehler 80070422 Screeze Off-Topic Diskussionen 3 23.09.2009 18:24
[Erledigt] Checkbox Zustand aus DB auslesen Knutschi PHP Tipps 2009 22 05.05.2009 14:02
[Erledigt] Fehler bei Array ausgabe newWorldOrder PHP Tipps 2009 2 23.02.2009 17:29
[Erledigt] Seite wird nicht angezeigt, untersch. Fehler bei IE/FF/Safar PHP-Fortgeschrittene 19 31.05.2005 14:52
Blöder MySQL Fehler PHP Tipps 2005 3 15.05.2005 03:14
Fehlermeldung - aber kein fehler... Tschuu HTML, Usability und Barrierefreiheit 16 14.03.2005 15:56
Wo liegt der fehler?? PHP-Fortgeschrittene 5 22.12.2004 09:54
array_push nur in begrenzter Anzahl ausführen ? PHP Tipps 2004 2 07.09.2004 09:05


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:40 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum