ebiz-webhosting
- Ad -
php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX und CSS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 

 


HTML, JavaScript, AJAX und CSS Probleme mit HTML? Netscape oder IE funktionieren nicht so, wie sie sollen? Stellt eure HTML-Fragen hier im Forum und diskutiert eure Probleme mit anderen Entwicklern.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 27-10-2011, 15:04
susi1600
 Registrierter Benutzer
Links : Onlinestatus : susi1600 ist offline
Registriert seit: Nov 2006
Beiträge: 58
susi1600 ist zur Zeit noch ein unbeschriebenes Blatt
Standard abhängige Selects aus der Datenbank via AJAX/PHP

Hallo Community,

seit ein paar Stunden probiere ich mit einem Script herum und finde den Fehler bzw. die Lösung einfach nicht.

Ich habe eine Datenbank mit verschiedenen Artikeln, die haben verschiedene Größen und Farben.

Aufgebaut wie folgt:

HTML-Code:
id | artikelnummer |  farbkombination | groesse
1  |  DA-1000-PA   |  grün-weiß       | 34/36
2  |  DA-1000-PA   |  grün-blau       | 40/42
Nun soll man in einem ersten <select> die Farbwerte auswählen können, worauf hin sich in Abhängigkeit der Farbe die vorhandenen Größen in einem zweiten <select> ausgegeben werden.

Habe schon ein Script gefunden, und versucht, dieses anzupassen, doch funktioniert es leider nicht, sprich, mein zweiter select wird nach einer bereits ersten Auswahl nicht richtig geladen "nachgeladen".

Wenn ich als erstes die grün-weiss-Variation wähle, erscheint der select mit der Größenauswahl richtig.
Entscheide ich mich dann aber um, und wähle Farbe grün-blau, erhalte ich keine Größen mehr zur Auswahl, nur noch mein erstes <option> mit Größe wählen </option>.

Das script wie folgt:
HTML-Code:
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>

<script type="text/javascript">
$(document).ready(function() {
	$('#wait_1').hide();
	$('#farbe').change(function(){
	  $('#wait_1').show();
	  $('#result_1').hide();
      $.get("inc/functions.php", {
		func: "farbe",
		drop_var: $('#farbe').val(),
		artikelnummer: $('#artikelnummer').val()
		},
		function(response){
			$('#result_1').fadeOut();
			setTimeout("finishAjax('result_1', '"+escape(response)+"')", 400);
		}
	  );
      return false;
	});
});

function finishAjax(id, response) {
  $('#wait_1').hide();
  $('#'+id).html(unescape(response));
  $('#'+id).fadeIn();
}
</script>
</head>
<body>
<form action="" method="post">
  
    <select name="farbe" id="farbe">
    
      <option value="" selected="selected" disabled="disabled">Farbe wählen</option>
      
      <?php getSelectFarbe($artikelnummer); ?>
    
    </select> 
    <input type="hidden" id="artikelnummer" name="artikelnummer" 
    value="<?php echo $artikelnummer; ?>" />
    <span id="wait_1" style="display: none;">
    <img alt="Please Wait" src="ajax-loader.gif"/>
    </span>
    <span id="result_1" style="display: none;"></span> 
  
</form>
</body>
Die PHP-Funktion dazu wie folgt:

PHP-Code:
<?php

function getSelectFarbe($artikelnummer) {
    
$result mysql_query("SELECT 
    DISTINCT farbkombination 
    FROM groessen_und_farben 
    WHERE artikelnummer='$artikelnummer'"

    or die(
mysql_error());

      while(
$farbe mysql_fetch_array$result )) {
           echo 
'<option value="'.$farbe['farbkombination'].'">'.$farbe['farbkombination'].'</option>';
        }

}


if(
$_GET['func'] == "farbe" && isset($_GET['func'])) { 
   
farbe($_GET['drop_var'],$_GET['artikelnummer']); 
}

function 
farbe($drop_var,$artikelnummer) {  
    
$result mysql_query("SELECT * 
    FROM groessen_und_farben 
    WHERE farbkombination='$drop_var' 
    AND artikelnummer='$artikelnummer'"

    or die(
mysql_error());
    
    echo 
'<select name="groesse" id="groesse">
          <option value="" disabled="disabled" selected="selected">Größe wählen</option>'
;

           while(
$groessen mysql_fetch_array$result )) {
              echo 
'<option value="'.$groessen['groesse'].'">'.$groessen['groesse'].'</option>';
            }
    
    echo 
'</select> ';
    echo 
'<input type="submit" name="submit" value="Submit" />';
}
?>
Wo ist denn hier der Haken?
Geht mit irgendwo die Info für die Artikelnummer verloren oder warum ergibt die DB-Abfrage hier keine Werte mehr?
Ich bin mal eher so ein richtiger AJAX-Nichtkönner, daher mein Posting in diesem Bereich. Vermute einen Nachladefehler mittels JS/AJAX, kann das sein?

Vielen Danke schon mal und sonnige Grüße,
susi1600
Mit Zitat antworten
  #2 (permalink)  
Alt 27-10-2011, 15:14
susi1600
 Registrierter Benutzer
Links : Onlinestatus : susi1600 ist offline
Registriert seit: Nov 2006
Beiträge: 58
susi1600 ist zur Zeit noch ein unbeschriebenes Blatt
Standard .... selber drauf gekommen

Hoi, ja also wie es sein soll findet man den Fehler natürlich NACHDEM man ein Posting gemacht hat....

Es lag an der Codierung der DB, immer bei Sonderzeichen in den Farben lädt der keine Größen rein - Käse aber auch!
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
DB Inhalte via Ajax und php wiedergeben kaipiranja PHP Developer Forum 3 03-01-2007 14:16
Eintragen in Datenbank via PHP enforcer SQL / Datenbanken 6 24-11-2006 07:16
Abhängige Auswahllisten mit dynamischen Werten aus MySQL notonokata Projekthilfe 3 18-10-2006 11:19
PHP liest falschen Wert aus der Datenbank yosh24 PHP Developer Forum 8 28-07-2006 11:07
Suche aus Datenbank mit an Zahl der Ergebnisse aus einem Datensatz ? Maranello-550 SQL / Datenbanken 4 24-06-2003 12:40

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

MariaDB 5.5 veröffentlicht
MariaDB 5.5 veröffentlichtDie freie MySQL-Alternative MariaDB wurde in der stabilen Version 5.5.23 veröffentlicht und soll einige Verbesserungen gegenüber Oracles Communityversion von MySQL mitbringen.

16.04.2012 | Berni

Deutsche Yii Framework Community
Deutsche Yii Framework CommunitySeit dem 19.03.2012 gibt es für die Yii PHP Framework Community ein deutsches Zuhause.

20.03.2012 | dhcomputer

 

Aktuelle PHP Scripte

belbit LiveSupport Script ansehen belbit LiveSupport Script

Schnellen und unkomplizierten Support im LiveSupport-Chat anbieten. Ohne Datenbank und in wenigen Sekunden installiert.

24.05.2012 EichbaumMedia | Kategorie: PHP/ Chat
belbit Ticketcenter-Script ansehen belbit Ticketcenter-Script

Verwalten Sie Supportanfragen zuverlässig im Web2.0-Stil anstatt per E-Mail - inkl. Überprüfung, ob Antworten gelesen wurden und mehr.

24.05.2012 EichbaumMedia | Kategorie: PHP/ Ticketsystem
Advanced Login ansehen Advanced Login

Login-System und Kundenverwaltung, die sich spielend leicht in bestehende Webseiten einbauen lässt und einen enormen Funktionsumfang bietet Ihre eigene Webseite muss mit Advanced Login nicht umständlich an ein fertiges System angepasst werden.

24.05.2012 Madden | Kategorie: PHP/ Kundenverwaltung
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:10 Uhr.