php.de

Zurück   php.de > Webentwicklung > HTML, Usability und Barrierefreiheit

HTML, Usability und Barrierefreiheit Themen rund um Textauszeichnung, Formatierung, Barrierefreiheit und Usability.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 24.08.2010, 16:46  
Benutzer
 
Registriert seit: 12.12.2008
Beiträge: 60
Herbert40 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Bestimten Eintrag in Listenfeld selektieren

hi leute,
ich habe eine mysql abfrage in einen listenfeld eingefügt. dieser wird benötigt um ein 2 listenfeld aus mysql abzufragen.
PHP-Code:
<?php require_once('Connections/mysql.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function 
GetSQLValueString($theValue$theType$theDefinedValue ""$theNotDefinedValue ""
{
  
$theValue get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;

  
$theValue function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch (
$theType) {
    case 
"text":
      
$theValue = ($theValue != "") ? "'" $theValue "'" "NULL";
      break;    
    case 
"long":
    case 
"int":
      
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case 
"double":
      
$theValue = ($theValue != "") ? "'" doubleval($theValue) . "'" "NULL";
      break;
    case 
"date":
      
$theValue = ($theValue != "") ? "'" $theValue "'" "NULL";
      break;
    case 
"defined":
      
$theValue = ($theValue != "") ? $theDefinedValue $theNotDefinedValue;
      break;
  }
  return 
$theValue;
}
}
$kategorie $_POST['kategorie'];

$ukat $_POST['ukat'];

mysql_select_db($database_mysql$mysql);
$query_haupt "SELECT DISTINCT kk FROM kategorie";
$haupt mysql_query($query_haupt$mysql) or die(mysql_error());
$row_haupt mysql_fetch_assoc($haupt);
$totalRows_haupt mysql_num_rows($haupt);


?><form action="hauptkategorie.php" method="post">
  <label>
  <select name="kategorie" id="kategorie">
    <?php
do {  
?>
    <option value="<?php echo $row_haupt['kk']?>"><?php echo $row_haupt['kk']?></option>
    <?php
} while ($row_haupt mysql_fetch_assoc($haupt));
  
$rows mysql_num_rows($haupt);
  if(
$rows 0) {
      
mysql_data_seek($haupt0);
      
$row_haupt mysql_fetch_assoc($haupt);
  }
?>
    </select>
  </label>
<?php 
mysql_select_db
($database_mysql$mysql);
$query_ukat "SELECT * FROM kategorie WHERE kk = '$kategorie'";
$ukat mysql_query($query_ukat$mysql) or die(mysql_error());
$row_ukat mysql_fetch_assoc($ukat);
$totalRows_ukat mysql_num_rows($ukat);
?>
  <label>
  <select name="ukat" size="1" id="ukat">
    <?php
do {  
?>
    <option value="<?php echo $row_ukat['uk']?>"><?php echo $row_ukat['uk']?></option>
    <?php
} while ($row_ukat mysql_fetch_assoc($ukat));
  
$rows mysql_num_rows($ukat);
  if(
$rows 0) {
      
mysql_data_seek($ukat0);
      
$row_ukat mysql_fetch_assoc($ukat);
  }
?>
      </select>
  </label>
  <label>senden
  <input type="submit" name="senden" id="senden" value="Senden">
  </label>
  <p>Hauptkategorie: <?php echo $kategorie?>  Unterkategorie: <?php echo $ukat?> </p>
</form>

<?php
soweit so gut.
beim ersten durchlauf geht auch alles soweit klar nur das das erste listenfeld mir wieder den ersten eintag und nicht den davor selektierten eintrag reinschreibt.

meine Frage:

ist es irgendwie möglich nach dem esrten submit den ausgewählten eintrag wieder in der Liste zu selektieren ohne das die anderen Einträge aus der liste verschwunden sind

danke für jede hilfe
Herbert40 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 24.08.2010, 16:54  
Benutzer
 
Registriert seit: 15.12.2008
Beiträge: 70
the-rod befindet sich auf einem aufstrebenden Ast
Standard

Du kannst den Wert doch einfach als Variable übergeben, und wenn diese dann gesetzt ist, soll sie zuerst angezeigt werden.
__________________
Computer Witze, Apple Witze, Nintendo Witze, etc
http://www.it-witze.de

the-rod ist offline   Mit Zitat antworten
Alt 24.08.2010, 17:09  
Benutzer
 
Registriert seit: 12.12.2008
Beiträge: 60
Herbert40 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von the-rod Beitrag anzeigen
Du kannst den Wert doch einfach als Variable übergeben, und wenn diese dann gesetzt ist, soll sie zuerst angezeigt werden.
wenn ich mir die auswal als variable anzeigen lasse dann sind aber die anderen Einträge verschwunden
Herbert40 ist offline   Mit Zitat antworten
Alt 24.08.2010, 17:21  
Benutzer
 
Registriert seit: 15.12.2008
Beiträge: 70
the-rod befindet sich auf einem aufstrebenden Ast
Standard

Bin gerade aufm Sprung , deshalb kann ich mir den Code jetzt nicht genau ankuken, aber zu der vorgehensweise:

- Übergib die Variable
- Wenn Variable gesetzt, prüfe in der Schleife welcher Eintrag diesen Wert hat
- Wenn der Wert gleich ist, setzte als "selected"

Hoffe ich konnte helfen, bis später
__________________
Computer Witze, Apple Witze, Nintendo Witze, etc
http://www.it-witze.de

the-rod ist offline   Mit Zitat antworten
Alt 24.08.2010, 17:27  
Benutzer
 
Registriert seit: 12.12.2008
Beiträge: 60
Herbert40 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von the-rod Beitrag anzeigen
Bin gerade aufm Sprung , deshalb kann ich mir den Code jetzt nicht genau ankuken, aber zu der vorgehensweise:

- Übergib die Variable
- Wenn Variable gesetzt, prüfe in der Schleife welcher Eintrag diesen Wert hat
- Wenn der Wert gleich ist, setzte als "selected"

Hoffe ich konnte helfen, bis später
ok schau mir das morgen noch mal an mit deinen überlegungen muß auch erstmal los für heute aber danke erstmal
Herbert40 ist offline   Mit Zitat antworten
Alt 24.08.2010, 17:35  
Moderator
 
Registriert seit: 06.06.2008
Beiträge: 4.849
PHP-Kenntnisse:
Fortgeschritten
Wolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer Anblick
Wolla eine Nachricht über ICQ schicken
Standard

Diese Funktion erstellt den HTML-Code für eine Select-Box.

PHP-Code:
function selbox($feldname,$werte,$selwert=0)
{
    
// $feldname: Der Name des Eingabefeldes innerhalb des Formulars
    // $werte: Array mit allen möglichen Werten
    // $selwert: Der Wert aus $werte, der vorselektiert sein soll
    
    
$selbox '<select name="' $feldname '">' "\n";
    foreach (
$werte as $val => $text) {
        
$selbox .= '<option value="';
        
$selbox .= $val;
        
$selbox .= '"';
        if (
$val == $selwert) {
            
$selbox .= ' selected = "selected"';
        }
        
$selbox .= '>';
        
$selbox .= $text;
        
$selbox .= '</option>' "\n";
    }
    
$selbox .= '</select>' "\n";       
    return 
$selbox;

Beispiel, um eine Box mit Anreden zu erstellen, wobei bei Auswahl Frau eine 1, und bei Auswahl Herr eine 2 zurückgegeben wird:

PHP-Code:

if ( !empty( $_POST['anrede'] ) {
   
$anrede $_POST['anrede'];
} else {
   
$anrede '0';
}

$werte = array(
        
'0' => 'Bitte auswählen',
        
'1' => 'Frau',
        
'2' => 'Herr'
);
$box_anrede selbox('anrede',$werte,$anrede); 
Die Funktion baut, in Abhängigkeit vom Array $werte beliebige Selectboxen zusammen.
Viel Spaß beim Ausprobieren.
__________________
Warum denkt mein Hund eigentlich immer dann, wenn es an der Tür klingelt, es sei für ihn?

Geändert von Wolla (24.08.2010 um 17:38 Uhr).
Wolla ist offline   Mit Zitat antworten
Alt 25.08.2010, 16:53  
Benutzer
 
Registriert seit: 12.12.2008
Beiträge: 60
Herbert40 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Wolla Beitrag anzeigen
Diese Funktion erstellt den HTML-Code für eine Select-Box.
habe das mal nach diesen muster umgestrickt klappt auch danke erstmal.

wolle aber nun bei der auswal sofort ein neu laden der seite veranlassen habe aber wohl irgendwo ein denkfehler

habe den eintag in der funktion wie folgt geändert
PHP-Code:
$selbox '<select onchange=\"this.form.submit()\" name="' $feldname '">' "\n"
Herbert40 ist offline   Mit Zitat antworten
Alt 25.08.2010, 17:14  
Benutzer
 
Registriert seit: 12.12.2008
Beiträge: 60
Herbert40 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Herbert40 Beitrag anzeigen
habe das mal nach diesen muster umgestrickt klappt auch danke erstmal.

wolle aber nun bei der auswal sofort ein neu laden der seite veranlassen habe aber wohl irgendwo ein denkfehler

habe den eintag in der funktion wie folgt geändert
PHP-Code:
$selbox '<select onchange=\"this.form.submit()\" name="' $feldname '">' "\n"
manchmal ist man halt nur blöd
habe den fehler selber gefunden
PHP-Code:
$selbox '<select onchange="this.form.submit()" name="' $feldname '">' "\n"
für denen die es inrerssiert hier der vollständige script
PHP-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Unbenanntes Dokument</title>


<?php
function selbox($feldname,$werte,$selwert=0)
{
    
// $feldname: Der Name des Eingabefeldes innerhalb des Formulars
    // $werte: Array mit allen möglichen Werten
    // $selwert: Der Wert aus $werte, der vorselektiert sein soll
    
    
$selbox '<select onchange="this.form.submit()" name="' $feldname '">' "\n";
    foreach (
$werte as $val => $text) {
        
$selbox .= '<option value="';
        
$selbox .= $val;
        
$selbox .= '"';
        if (
$val == $selwert) {
            
$selbox .= ' selected = "selected"';
        }
        
$selbox .= '>';
        
$selbox .= $text;
        
$selbox .= '</option>' "\n";
    }
    
$selbox .= '</select>' "\n";       
    return 
$selbox;
}
?>
</head>
<body>
<p>
  <br />
</p>
<form id="form1" name="form1" method="post" action="">
  <label> <br />
  <br /><?php
if ( !empty( $_POST['kk'] )) {
   
$kk $_POST['kk'];
} else {
   
$kk '0';
}

include (
'kat.php');
$werte $kat;
?>
  <?php echo $box_kk selbox('kk',$werte,$kk); 
if ( !empty( 
$_POST['uk'] )) {
   
$uk $_POST['uk'];
} else {
   
$uk '0';
}
$werte = $$kk;
echo 
$box_uk selbox('uk',$werte,$uk); 
?>
<br />
  <input type="submit" name="senden" id="senden" value="Senden" />
  </label>
</form>


<p>
</body>
</html>
achso in der kat.php

sind die kategorien nach dem oben gegebenen muster angelegt

Danke nochmal an alle die geholfen haben
Herbert40 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] Menü ein - und ausklappen abdullah JavaScript, Ajax und mehr 8 27.02.2010 23:54
[Erledigt] Durch einen DB Eintrag alle anderen Einträge bearbeiten Rutor PHP Tipps 2010 8 08.02.2010 13:25
Bei MySQL ersten und letzten Eintrag selektieren root66 Datenbanken 3 13.08.2009 16:26
2 <form> überschneiden sich... voda HTML, Usability und Barrierefreiheit 16 06.08.2009 11:35
Array eintrag für Eintrag durchgehen und jeweils Feld hinzufügen Stephan_87 PHP Tipps 2009 3 12.02.2009 19:23
neuer Eintrag in DB speichern und in Listenfeld wiedergeben Raggazzi PHP Tipps 2008 7 06.10.2008 18:16
Sortierreihenfolge nach Eintrag oder letzter Änderung leuktra Datenbanken 7 29.01.2007 19:20
UPDATE eintrag falls vorhanden ansonsten INSERT Plague Datenbanken 4 19.01.2007 13:36
Mysql Eintrag über mehrere Zeielne Eintrag funzt nicht PHP Tipps 2006 3 14.03.2006 19:38
Positionierung im Listenfeld festlegen HTML, Usability und Barrierefreiheit 1 23.11.2005 19:44
Menü mit Unterpunkten supertramp Beitragsarchiv 7 18.10.2005 22:40
PHP klappmenü PHP Tipps 2005-2 1 15.10.2005 00:31
Eintrag wird nicht eingetragen (Kontrollfunktion lügt?) PHP Tipps 2005-2 0 02.10.2005 12:00
letzter Eintrag selektieren Datenbanken 2 17.03.2005 15:31
Abfrage ob Eintrag schon in DBbevor Eintrag gespeichert wird Datenbanken 6 06.08.2004 22:10

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
http://www.php.de/html-usability-und-barrierefreiheit/71115-erledigt-bestimten-eintrag-listenfeld-selektieren.html, function selbox($feldname,$werte,$selwert=0), listenfeld html, listenfeld selektieren, php listenfeld sonstiges, listbox markieren wenn submit, function selbox($feldname,$werte,$zellwert=0), html select selektierten eintrag anzeigen, javascript eintrag in liste selektieren, php listbox eintrag selektieren, listeneintrag standard selektion oo letzter eintrag, php post vorselektieren, option aus mysql und vorselektieren, javascript eintrag selektieren, selektieren php, htmp einträge vorselektieren, php liste selektieren, php deatails zu selektierten datensatz select, php mysql daten listbox auswählen, php listenfeld selectieren

Alle Zeitangaben in WEZ +1. Es ist jetzt 22:52 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