php-resource



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

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 28-05-2009, 18:42
scream479
 Registrierter Benutzer
Links : Onlinestatus : scream479 ist offline
Registriert seit: May 2009
Beiträge: 24
scream479 befindet sich auf einem aufstrebenden Ast
Standard AJAX: Wert wird nicht ins Formular übertragen

Hallo AJAX Gurus,

Kann mir bitte jemand bei folgendem Script helfen und mir sagen warum bei "document.formular.test_wert.value=xmlHttp.respons eText;"
der Wert NICHT ins Formular geschrieben wird?

Der Wert aus der mySQL Abfrage ist laut dutchgeführtem Test 100%ig vorhanden.

Code:
var xmlHttp;
 
function get_keyword() 
{
xmlHttp=httpXMLobjects();
if (xmlHttp==null) {
  //alert ("Browser does not support AJAX");
  return;
}
 
var aufruf="http://www.[meinedomain].at/ajax/get_keyword.php";
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",aufruf,true);
xmlHttp.send(null);
} 
 
function stateChanged() 
{ 
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") 
    { 
     document.formular.test_wert.value=xmlHttp.responseText;
     } 
}
 
function httpXMLobjects() 
{
var xmlHttp=null;
try {
 // Fuer Firefox, Opera und Safari
 xmlHttp=new XMLHttpRequest();
 }
catch (e) {
 // Der Internet Explorer wills wieder anders
 try {
  xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
  }
 catch (e) {
  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
 }
return xmlHttp;
}
Vielen Dank für die Hilfe!
Max
Mit Zitat antworten
  #2 (permalink)  
Alt 28-05-2009, 18:55
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.722
Kropff befindet sich auf einem aufstrebenden Ast
Standard

was ergibt denn ein
PHP-Code:
alert(xmlHttp.responseText); 
bei ajax empfehle ich dir übrigens die konsole vom firebug. da kannst du wunderbar alles nachvollziehen.

peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #3 (permalink)  
Alt 28-05-2009, 19:04
scream479
 Registrierter Benutzer
Links : Onlinestatus : scream479 ist offline
Registriert seit: May 2009
Beiträge: 24
scream479 befindet sich auf einem aufstrebenden Ast
Standard

Hi Peter,

Danke erstmal für Deine Hilfe.

Bei:
Code:
alert(xmlHttp.responseText); 
wird mir der korrekte Wert ausgegeben.

document.formular.test_wert.value ist aber definitiv verfügbar.

Ich hab hier zuvor auch einen Wert zugewiesen und diesen
via alert(document.formular.test_wert.value); ausgeben können.
Mit Zitat antworten
  #4 (permalink)  
Alt 28-05-2009, 19:35
scream479
 Registrierter Benutzer
Links : Onlinestatus : scream479 ist offline
Registriert seit: May 2009
Beiträge: 24
scream479 befindet sich auf einem aufstrebenden Ast
Standard

Ich denke dass ich in meinen Funktionsaufrufen einen Fehler habe,
jedoch weiss ich nicht wo.

Code:
<script src="ajax/get_keywords.js" type="text/javascript"></script>
 
<script language="javascript">
...
var afs_keyword;
afs_keyword=get_keyword(); //Funktion steht in ajax/get_keywords.js
...
</script>
 
<form>
<input type="hidden" name="test_wert" value="">
</form>
Wie müsste man "document.formular.test_wert.value=xmlHttp.responseText;" (vorriges Posting) anpassen, damit der Rückgabewert in "afs_keyword" gespeichert wird?
Also dort von wo die Funktion eigentlich aufgerufen wurde.

Ich geh mal davon aus, dass hier der Fehler liegt.
Mit Zitat antworten
  #5 (permalink)  
Alt 28-05-2009, 20:25
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.722
Kropff befindet sich auf einem aufstrebenden Ast
Standard

wenn das alert erscheint, dann wird die funktion korrekt ausgeführt. und wenn du den firebug bemüht hättest, dann wäre dir aufgefallen, dass document.formular nicht existiert. warum? ganz einfach. formular bezieht sich auf den formularnamen! also entweder
PHP-Code:
document.forms[0].test_wert 
oder
PHP-Code:
<form name="formular"
daher solltest du dir das hier mal zu gemüte führen.

peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #6 (permalink)  
Alt 28-05-2009, 20:47
scream479
 Registrierter Benutzer
Links : Onlinestatus : scream479 ist offline
Registriert seit: May 2009
Beiträge: 24
scream479 befindet sich auf einem aufstrebenden Ast
Standard

Das mit dem form ist klar.
Ich hab das ja nur als Beispiel angeführt.

Wo mein Problem weiss ich bereits.

Ich rufe die AJAX Funktion innerhalb eines anderen Javascripts auf.
alert bringt mir innerhalb der AJAX Funktion den korrekten Wert.
Da funktioniert also alles.

Ein alert innerhalb des ersten Javascripts (von dem aus die AJAX Funktion aufgerufen wurde) zeigt mir wieder einen leeren Wert an, da ich es irgendwie so machen muss, dass das Formular erst dann abgeschickt wird, wenn die Zuweisung über die Ajax Funktion erfolgt ist.

Der Fehler liegt also daran, dass das erste Javascript schneller ist als jenes welchen den Wert via Ajax zuweist.

Eine Lösung hierfür hab ich noch keine.
Mit Zitat antworten
  #7 (permalink)  
Alt 28-05-2009, 20:54
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.722
Kropff befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Ich hab das ja nur als Beispiel angeführt.
solltest du nicht tun. das führt auf eine falsche fährte.
Zitat:
Der Fehler liegt also daran, dass das erste Javascript schneller ist als jenes welchen den Wert via Ajax zuweist.
dann bau doch das abschicken in deine ajax-datei ein:
PHP-Code:
function stateChanged() 

  if (
xmlHttp.readyState==|| xmlHttp.readyState=="complete"
  { 
    
document.formular.test_wert.value=xmlHttp.responseText;
    
document.formuar.submit();
  } 

wo ist das problem?

peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #8 (permalink)  
Alt 28-05-2009, 21:11
scream479
 Registrierter Benutzer
Links : Onlinestatus : scream479 ist offline
Registriert seit: May 2009
Beiträge: 24
scream479 befindet sich auf einem aufstrebenden Ast
Standard

Gibts hier die Möglichkeit das ganze kostenpflichtig erledigen zu lassen?
Mit Zitat antworten
  #9 (permalink)  
Alt 28-05-2009, 21:18
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.722
Kropff befindet sich auf einem aufstrebenden Ast
Standard

ja, hier. nur warum?

peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
Mit Zitat antworten
  #10 (permalink)  
Alt 28-05-2009, 22:24
scream479
 Registrierter Benutzer
Links : Onlinestatus : scream479 ist offline
Registriert seit: May 2009
Beiträge: 24
scream479 befindet sich auf einem aufstrebenden Ast
Standard

Mein letzer Versuch mit den entscheidenden Scriptteilen und eine genau Beschreibung von dem was ich letztendlich benötigen würde.


formular.php
Code:
<script src="ajax/get_keywords.js" type="text/javascript"></script>
 
<script language="javascript">
function kontrolle_left()
{
...
var afs_keyword;
afs_keyword=get_keyword(); //Funktion steht in ajax/get_keywords.js
 
/*
Genau hier an dieser Stelle bräuchte ich den Wert von xmlHttp.responseText
Erst wenn dieser durch die Ajax Funktion ermittelt wurde soll genau hier 
im Script weitergemacht werden.
*/
...
 
   if(ok==true)
   {
   return true;   
   }
   else
   {
   alert(meldung+"\nBitte um Korrektur der Angaben.");
   return false;
   }
}
</script>
 
<form method="get" action="suche.php" name="formular" onsubmit="return kontrolle_left()">
<input type="hidden" name="test_wert" value="">
</form>
ajax/get_keywords.js
Code:
var xmlHttp;
 
function get_keyword() 
{
xmlHttp=httpXMLobjects();
if (xmlHttp==null) {
  //alert ("Browser does not support AJAX");
  return;
}
 
var aufruf="http://www.[meinedomain].at/ajax/get_keyword.php";
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",aufruf,true);
xmlHttp.send(null);
} 
 
function stateChanged() 
{ 
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") 
    { 
     return xmlHttp.responseText; //funktioniert nicht
     /*
     da in formular.php, ok==true und das Formular abgeschickt wird
     */
     } 
}
 
function httpXMLobjects() 
{
var xmlHttp=null;
try {
 // Fuer Firefox, Opera und Safari
 xmlHttp=new XMLHttpRequest();
 }
catch (e) {
 // Der Internet Explorer wills wieder anders
 try {
  xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
  }
 catch (e) {
  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
 }
return xmlHttp;
}
Mit Zitat antworten
  #11 (permalink)  
Alt 28-05-2009, 23:10
Kropff
  Administrator
Links : Onlinestatus : Kropff ist offline
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.722
Kropff befindet sich auf einem aufstrebenden Ast
Standard

OffTopic:
sie haben post

peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
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
[JavaScript] [AJAX] wird nicht ausgeführt Witzigerkiller HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 2 06-04-2008 21:56
Wert wird nicht angezeigt jobau PHP Developer Forum 4 08-05-2007 13:32
Get Variable wird nach Form action nicht Übertragen dakingno1 PHP Developer Forum 26 24-12-2006 16:54
if wird nicht ausgewertet (AJAX) joebar HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 15 06-12-2006 15:11
Formular Daten werden nicht in die DB übertragen Matty2k HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 17 24-05-2005 15:03

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

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 06:07 Uhr.