SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Der CSS-Problemlöser

Der CSS-Problemlöser zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 30.12.2012, 21:21:19
inspiron inspiron ist offline
Anfänger
 
Registriert seit: Nov 2009
Alter: 68
Beiträge: 51
Selectfeld aus DB - Auswahl nach versenden erhalten

Hallo,

ich möchte ein Selectfeld haben welches aus einer DB gefüllt wird (dies funktioniert bereits) und die letzte Auswahl nach dem Versenden des Formulars erhalten bleibt.
Wie könnte das gehen?

Gruß

PHP-Code:
<select name="SCHICHT" id="SCHICHT" <?php if(isset($errorFelder['SCHICHT'])) echo 'class="error"'?>>
<?php
    mysql_connect
$mysqlhost$mysqluser$mysqlpwd);
    
mysql_select_db($mysqldb);

    
$sql "SELECT * FROM dropdown_schicht ";
    
$result mysql_query($sql);
        while (
$row mysql_fetch_array($result)) {
        echo 
"<option>" $row['schicht'] . "</option>";
        }
?>
</select>
Mit Zitat antworten
  #2  
Alt 30.12.2012, 23:42:58
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Selectfeld aus DB - Auswahl nach versenden erhalten

http://de.selfhtml.org/html/formular..._vorselektiert
Mit Zitat antworten
  #3  
Alt 31.12.2012, 09:15:30
inspiron inspiron ist offline
Anfänger
 
Registriert seit: Nov 2009
Alter: 68
Beiträge: 51
AW: Selectfeld aus DB - Auswahl nach versenden erhalten

Hallo,
danke für die Hilfe! :-)
Nur möchte ich kein normales Selectfeld.
So wie beschrieben, wird dieses aus einer DB gefüllt, was ja bereits funktioniert.
Es soll auch nach dem Absenden die Auswahl behalten.

Ich habe da auch schon etwas probiert nur komme ich nicht weiter. Es wird nur 11x Array angezeigt.

Gruß

PHP-Code:
<select name="SCHICHT" id="SCHICHT">
<?php
    $sql 
'SELECT * FROM dropdown_schicht'
    
$result mysql_query($sql) OR die(mysql_error());
    
$anzahl mysql_num_rows($result);
    
$row = array(); 
    while (
$row[] = mysql_fetch_assoc($result));

        for(
$a 0$a $anzahl$a++){
        echo 
" <option value=\"$row[$a]\"";
          if (
$_POST["SCHICHT"] == $row[$a]) {
            echo 
" selected";
          }
         else {
           if (
$_POST["SCHICHT"] == "" && $a == 0) {
             echo 
" selected";
           }
         }
           echo 
">$row[$a]</option>\n";
        }
?>
</select>
Mit Zitat antworten
  #4  
Alt 31.12.2012, 11:31:45
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Selectfeld aus DB - Auswahl nach versenden erhalten

Zitat:
Zitat von inspiron Beitrag anzeigen
Ich habe da auch schon etwas probiert nur komme ich nicht weiter.
Das stimmt - ich blick auch nicht durch, was Du da anstellst.

Angenommen, die auszuwertende Spalte heißt `schicht`
PHP-Code:
<select name="SCHICHT" id="SCHICHT">
<?php

$db 
= new mysqli($DBHOST$DBUSER$DBPASS$DBNAME);
if (
$db->connect_error) {
    die(
'Connect Error (' $db->connect_errno ') '
            
$db->connect_error);
}

$sql 'SELECT `schicht` FROM dropdown_schicht'

if (
false ===    ($result $db->query($sql) ))
    die(
'SQL Error: ' $db->error() );

while(
$obj $result->fetch_object(){
    
$sel '';
    if (! empty(
$_POST['SCHICHT']) AND $_POST['SCHICHT'] == $obj->selected)
        
$sel 'selected="selected"';
    elseif (
$obj->selected == 0)
        
$sel 'selected';
    
printf('<option value="%1$d" %2$s>%1$d</option>' "\n",
        
$obj->selected,
        
$sel);
}
$result->close();
?>
</select>
Verwende bitte zukünftig die mysqli Extension, weil die veraltete Extension mysql (ohne i) ab PHP 5.5.x als deprecated angemeckert wird.
https://github.com/php/php-src/blob/...5.0alpha2/NEWS
Mit Zitat antworten
  #5  
Alt 31.12.2012, 12:37:24
inspiron inspiron ist offline
Anfänger
 
Registriert seit: Nov 2009
Alter: 68
Beiträge: 51
AW: Selectfeld aus DB - Auswahl nach versenden erhalten

Hallo,
schönen Dank für die Hilfe.
Ich habe mal das Script getestet, bekomme eine Fehlermeldung:

Zitat:
Parse error: parse error in select_db_2.php on line 27
Zeile 27 ist:
PHP-Code:
while($obj $result->fetch_object(){ 
PHP-Code:
<select name="SCHICHT" id="SCHICHT"> 
<?php 

$db 
= new mysqli($mysqlhost$mysqluser$mysqlpwd$mysqldb); 
if (
$db->connect_error) { 
    die(
'Connect Error (' $db->connect_errno ') ' 
            
$db->connect_error); 


$sql 'SELECT `schicht` FROM dropdown_schicht';  

if (
false ===    ($result $db->query($sql) )) 
    die(
'SQL Error: ' $db->error() ); 

while(
$obj $result->fetch_object(){ 
    
$sel ''
    if (! empty(
$_POST['SCHICHT']) AND $_POST['SCHICHT'] == $obj->selected
        
$sel 'selected="selected"'
    elseif (
$obj->selected == 0
        
$sel 'selected'
    
printf('<option value="%1$d" %2$s>%1$d</option>' "\n"
        
$obj->selected
        
$sel); 

$result->close(); 
?> 
</select>
Mit Zitat antworten
  #6  
Alt 31.12.2012, 13:18:17
inspiron inspiron ist offline
Anfänger
 
Registriert seit: Nov 2009
Alter: 68
Beiträge: 51
AW: Selectfeld aus DB - Auswahl nach versenden erhalten

Zitat:
Zitat von inspiron Beitrag anzeigen
Hallo,
schönen Dank für die Hilfe.
Ich habe mal das Script getestet, bekomme eine Fehlermeldung:


Zeile 27 ist:
PHP-Code:
while($obj $result->fetch_object(){ 
ist die fehlende Klammer hier richtig?
PHP-Code:
while($obj $result->fetch_object()){ 
Mit Zitat antworten
  #7  
Alt 31.12.2012, 13:24:38
inspiron inspiron ist offline
Anfänger
 
Registriert seit: Nov 2009
Alter: 68
Beiträge: 51
AW: Selectfeld aus DB - Auswahl nach versenden erhalten

...es wird nur Array ( [SCHICHT] => 0 ) angezeigt! :-(
Mit Zitat antworten
  #8  
Alt 31.12.2012, 13:36:25
DokuLeseHemmung DokuLeseHemmung ist offline
SELFPHP Experte
 
Registriert seit: Jun 2008
Alter: 15
Beiträge: 2.269
AW: Selectfeld aus DB - Auswahl nach versenden erhalten

Zitat:
ist die fehlende Klammer hier richtig?
Gut erkannt.

Zitat:
'SELECT `schicht`
wo soll da $obj->selected her kommen?
Mit Zitat antworten
  #9  
Alt 31.12.2012, 13:45:29
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Selectfeld aus DB - Auswahl nach versenden erhalten

Zitat:
Zitat von DokuLeseHemmung Beitrag anzeigen
Gut erkannt.
wo soll da $obj->selected her kommen?
Kotz! Klammer vajessen und falsche Objektvariable getippert:
PHP-Code:
... $obj->schicht ... 
Dabei hab ich zu so früher Stunde noch nich ma' 'n Glas zum Reingucken... :-(
Mit Zitat antworten
  #10  
Alt 31.12.2012, 13:47:43
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Selectfeld aus DB - Auswahl nach versenden erhalten

Korrektur:
Angenommen, die auszuwertende Spalte heißt `schicht`
PHP-Code:
<select name="SCHICHT" id="SCHICHT">
<?php

$db 
= new mysqli($DBHOST$DBUSER$DBPASS$DBNAME);
if (
$db->connect_error) {
    die(
'Connect Error (' $db->connect_errno ') '
            
$db->connect_error);
}

$sql 'SELECT `schicht` FROM dropdown_schicht'

if (
false ===    ($result $db->query($sql) ))
    die(
'SQL Error: ' $db->error() );

while(
$obj $result->fetch_object() ){
    
$sel '';
    if (! empty(
$_POST['SCHICHT']) AND $_POST['SCHICHT'] == $obj->schicht)
        
$sel 'selected="selected"';
    elseif (
$obj->schicht == 0)
        
$sel 'selected';
    
printf('<option value="%1$d" %2$s>%1$d</option>' "\n",
        
$obj->selected,
        
$sel);
}
$result->close();
?>
</select>
Peinsam...
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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 aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Dropdownmenü Auswahl auf Unterseite XY anzeigen? Clueso PHP Grundlagen 1 03.10.2010 13:53:57
Pulldown Auswahl abfragen/verarbeiten ansap PHP Grundlagen 7 07.01.2009 20:19:16
viele Newsletter ohne Spameinschätzung versenden Thomas H. Apache HTTP-Server 1 24.07.2008 11:15:19
in select multiple Auswahl löschen aviral HTML, CSS und JavaScript Help! 1 29.02.2004 01:01:09
Neue Nachricht erhalten n4pO PHP Grundlagen 1 12.02.2004 13:31:48


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


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt