Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Selected funktioniert nur bei änderung des Select name

Frage Entwicklung PHP

Mitglied: blackbonsai

blackbonsai (Level 1) - Jetzt verbinden

05.06.2013, aktualisiert 16:12 Uhr, 1299 Aufrufe, 4 Kommentare

Hallo hiermit rufe ich eine Dropbox auf mit den Inhalten einer Tabelle aus mySQL.
Nun das funktioniert gut, nur leider immer nur Einmal. Beim ändern der WHERE des query zu $row ändert sich der selected zwar jedoch wird immer noch der alte angezeigt.

01.
<select name="Kanton">  
02.
                <?php  
03.
                  $rowkant = mysql_fetch_assoc($querykant); 
04.
  
05.
                  // für jeden Eintrag ein Option-Tag erstellen                  
06.
                  do {  
07.
                      echo '<option value="'.$rowkant['kan_id'].'"'.( $row['ban_kanid'] == $rowkant['kan_id'] ? " selected": "").'>'.$rowkant['kan_name'].'</option>';  
08.
                  } while ($rowkant = mysql_fetch_array($querykant)) 
09.
                ?>  
10.
                 
11.
  			</select>
das giebt sowas aus
01.
                <option value="1" selected>ZH</option><option value="2">BE</option><option value="3">LU</option><option value="4">UR</option><option value="5">SZ</option><option value="6">OW</option><option value="7">NW</option><option value="8">GL</option><option value="9">ZG</option><option value="10">FR</option><option value="11">SO</option><option value="12">BS</option><option value="13">BL</option><option value="14">SH</option><option value="15">AR</option><option value="16">AI</option><option value="17" >SG</option><option value="18">GR</option><option value="19">AG</option><option value="20">TG</option><option value="21">IT</option><option value="22">VD</option><option value="23">VS</option><option value="24">NE</option><option value="25">GE</option><option value="26">JU</option> 
Bei dem Wechsel wird selected korrekt auf value 17 verschoben. Jedoch bleibt die auf der Seite ausgewählte option die 1
01.
                <option value="1" >ZH</option><option value="2">BE</option><option value="3">LU</option><option value="4">UR</option><option value="5">SZ</option><option value="6">OW</option><option value="7">NW</option><option value="8">GL</option><option value="9">ZG</option><option value="10">FR</option><option value="11">SO</option><option value="12">BS</option><option value="13">BL</option><option value="14">SH</option><option value="15">AR</option><option value="16">AI</option><option value="17" selected>SG</option><option value="18">GR</option><option value="19">AG</option><option value="20">TG</option><option value="21">IT</option><option value="22">VD</option><option value="23">VS</option><option value="24">NE</option><option value="25">GE</option><option value="26">JU</option> 
Wen ich jetzt den select name ändere und dan die Seite neu lade wird das select korrekt auf 17 angezeigt.

Der Name kann dan auch nichmehr verwendet werden. Er bleibt auf dem select hängen den er beim ersten mal hatte.

Wo mach ich den Fehler?
Mitglied: EvilMoe
05.06.2013 um 17:24 Uhr
Hallo,
ich kann noch nie genau nachvollziehen wo genau Dein Problem liegt.

Du hast also eine select Box, wählst dort einen Eintrag aus, und dann passiert was?


01.
// Warum hast du im Code beides? Ein würde doch völlig reichen. 
02.
$rowkant = mysql_fetch_assoc($querykant);  
03.
$rowkant = mysql_fetch_array($querykant
04.
 
05.
 
06.
 
07.
// würde doch reichen wenn Du es so machst 
08.
 while ($rowkant = mysql_fetch_assoc($querykant)) { 
09.
                      echo '<option value="'.$rowkant['kan_id'].'"'.( $row['ban_kanid'] == $rowkant['kan_id'] ? " selected": "").'>'.$rowkant['kan_name'].'</option>';   
10.
11.
12.
 
Bitte warten ..
Mitglied: blackbonsai
05.06.2013 um 20:51 Uhr
Das ist sicher schonmal hübscher danke.

Aber das ist nicht das Problem. Das ist ein Formular welches aufgerufen wird mit einr vorgabe die im SQL von $row drin ist. Wenn sich diese vorgabe verändert muss sich demensprechend das selected von select"Kanton" ändern.

Jetzt ist das Problem das sich das selected ändert aber nur beim ersten Aufrufen. Wen ich beim zeiten mal die vorgabe ändere den Namen von Kanton aber nicht passiert nichts mehr.

Freundliche Grüss
Bonsai
Bitte warten ..
Mitglied: Arano
05.06.2013, aktualisiert um 21:05 Uhr
Hi,

ich verstehe schon was dein Problem ist/sein soll,,, denke ich
und nur um auf Nummer sicher zu gehen:
Bei dem Wechsel wird selected korrekt auf value 17 verschoben.
"Wechsel" bedeutet:
  1. andere Option auswählen,
  2. Formular absenden (IDs in Datenbank werden aktualisiert)
  3. neues HTML wird generiert (damit auch neues Dropdown) und
  4. an den Browser ausgegeben (Seite neu geladen)

Du speicherst ERST die Änderung, liest DANACH die Daten aus der DB und gibst sie aus !?

Was, wenn du eine andere Option auswählst, speicherst (danach wird die alte Option noch als "selected" markiert angezeigt) und du nun mehrfach F5 oder Strg+F5 drückst !?

Was, wenn die eine andere Option auswählst, speicherst (danach wird die alte Option noch als "selected" markiert angezeigt) und du nun wieder eine andere Option auswählst und speicherst ? Wird dann immer noch die erste als "selected" angezeigt oder jetzt vielleicht die zweite oder tatsächlich schon die dritte ?

Da mir dieser Code als funktionsfähig erscheint.
DEBUGe ein bisschen:
Gebe zusätzlich zu dem Option-Namen auch die KAN_ID und die BAN_ID aus um zu vergleichen, z.B.
01.
while( $rowkant=mysql_fetch_assoc($querykant) ) 
02.
03.
    echo '<option value="'.$rowkant['kan_id'].'"' 
04.
         .( $row['ban_kanid']==$rowkant['kan_id'] ? "selected" : ""
05.
         .'>' 
06.
         .$row['ban_kanid'].'='.$rowkant['kan_id'].'?'.( $row['ban_kanid']==$rowkant['kan_id'] ? "ja" : "nein").' - ' 
07.
         .$rowkant['kan_name'].'</option>'
08.
    // <option value="1">1=17?nein - ZH</option> 
09.
    // <option value="2">2=17?nein - BE</option> 
10.
    // ... 
11.
    // <option value="17" selected>17=17?ja - SG</option> 
12.
}
Der Name kann dan auch nichmehr verwendet werden. Er bleibt auf dem select hängen den er beim ersten mal hatte.
Mit dem Name des selects darf das eigentlich nichts zu tun haben... hast du vielleicht irgendwelche Browser-Plugins/-Addons die sich deine Eingaben merken ?


Mehr Ideen habe ich auch nicht !


~Arano
Bitte warten ..
Mitglied: blackbonsai
05.06.2013 um 21:12 Uhr
Ok, hab mir jetzt mal noch den Chrome gezogen, und da läufts einwandfrei
Firefox macht leider weiterhin probleme aber dan ist es vielleicht wirklich ein Plugin das sich das Merkt.

Ich danke euch für die schnelle hilfe!
Bitte warten ..
Ähnliche Inhalte
Windows Server
Berechtigungsprobleme nach Änderung des Intranet-Namens

Frage von MaceWindu zum Thema Windows Server ...

Batch & Shell
gelöst Selected Gridview Value in Variable schreiben (4)

Frage von reissaus73 zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell select-string -pattern (2)

Frage von LianenSchwinger zum Thema Batch & Shell ...

Visual Studio
Sortierung von DataTable nach Select aufgelöst (1)

Frage von ForgottenRealm zum Thema Visual Studio ...

Neue Wissensbeiträge
Multimedia

Raspberry Pi als Digital-Signage-Computer

(1)

Information von BassFishFox zum Thema Multimedia ...

Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(15)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows Server
Kennwort vergessen bei Hyper vserver 2012r (26)

Frage von jensgebken zum Thema Windows Server ...

Router & Routing
Freigabe aus anderem Netz nicht erreichbar (21)

Frage von McLion zum Thema Router & Routing ...

Batch & Shell
Batch Programm verhalten bei shoutdown -p (19)

Frage von Michael-ITler zum Thema Batch & Shell ...

Visual Studio
Vb.net-Tool zum Erzeugen einer Outlook-E-Mail (18)

Frage von ahstax zum Thema Visual Studio ...