php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.01.2010, 00:10  
Neuer Benutzer
 
Registriert seit: 09.01.2010
Beiträge: 4
PHP-Kenntnisse:
Fortgeschritten
SplitterWind befindet sich auf einem aufstrebenden Ast
Standard AJAX - Variable von PhP erhalten auf möglichst simple Weise?

Ich nutze SimpleJS - ein einfaches Script/Framework zum nutzen von Ajax.

Ich befasse mich mit Javascript erst seit einigen Tagen, mit Php allerdings schon um einiges länger.


Ich überarbeite gerade mein Registrationsformular und mittels Ajax überprüft eine PhP Datei ob der gewählte Name bereits existiert und gibt das aus.


Da ich den Absenden Button erst anklickbar möchte wenn alle Daten stimmen muss auch Javascript mitkriegen ob der Name nun verfügbar ist oder nicht...


wie stelle ich das möglichst simpel an und auch so das es überall funktioniert und sicher vor Hackern ist?



Einfach <script>check=0;</script> mittels PhP auszugeben funktioniert nicht. (wäre mir ja am liebsten )

Ich dachte nun Spontan daran einen Hidden-Button mit der Variable auzugeben und den dann auszulesen allerdings müsste ich dann auch wieder eine Zeitschleife erstellen etc...

Da ich noch mehr mit Ajax machen möchte will ich auch keine 20-30 Hidden Buttons platzieren müssen...


Geht das nicht simpler?


Ich meine so eine Situation muss doch öfters vorkommen das man bei Ajax auch mit Javascript auf die Ausgabe reagieren möchte, allerdings habe ich kein Tutorial gefunden dass das beinhaltet...
SplitterWind ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 10.01.2010, 00:18  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.256
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

?? Ich denke Du nutzt Ajax? Dann mußt Du den Response entsprechend auswerten und via JS den Button stylen. Das hidden field hat keinen wirklichen SInn, denn PHP-seitig mußt Du sowieso nochmal alles prüfen.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online   Mit Zitat antworten
Alt 10.01.2010, 00:51  
Erfahrener Benutzer
 
Registriert seit: 08.03.2005
Beiträge: 475
Plague
Standard

Ähm wenn ich dich jetzt richtig verstanden habe fragst du via AJAX ab ob eine Datei vorhanden ist. Dort bekommst du ja eine Antwort (wie nikosch schon sagte).
Nun kannst du ja beim Empfang dieser AJAX-Nachricht eine funktion aufrufen die grob folgendes macht:

function blubblub() {
document.getElementById('meinButton').style.visibi lity = 'visible';
}

Initial setzt du die Sichtbarkeit einfach auf Hidden.

Ich hoffe ich hab richtig verstanden was du meinst ansonsten einfach noch mal genauer beschreiben...

vg
Plague ist offline   Mit Zitat antworten
Alt 10.01.2010, 01:08  
Neuer Benutzer
 
Registriert seit: 09.01.2010
Beiträge: 4
PHP-Kenntnisse:
Fortgeschritten
SplitterWind befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
?? Ich denke Du nutzt Ajax? Dann mußt Du den Response entsprechend auswerten und via JS den Button stylen. Das hidden field hat keinen wirklichen SInn, denn PHP-seitig mußt Du sowieso nochmal alles prüfen.
Wie kommst du darauf das ich kein Ajax nutze?

Das ich mittels PhP alles nochmal prüfen muss ist mir klar... Zum einen wegen der Sicherheit zum andern für Leute ohne JS...

ABER - wenn ich doch ohnehin prüfe ob der Name verfügbar ist und sich herausstellt das ers nicht ist, warum dann nochmal prüfen? Ich weiß das der nicht verfügbar ist, Php weiß es... nur Javascript eben nicht -_-...

Der Sinn liegt also darin das ich eine unnötige Prüfung verhindern kann und zusätzlich erfüllt das ganze den Sinn das ich eine solche Variablen-Übergabe auch später nochmal gebrauchen werde, also eine Übung...




Response auswerten... Wie? Ich nutze ein Script mit den Funktionen Ajaxload(...) und Ajaxreplace(...).


Beide geben als Return nur eine 1/0 je nachdem obs klappte.

Die Funktionen umzuschreiben trau ich mir nicht zu...




Also sollte ich ein anderes Script/Framework nutzen?

Nur welches? Ich will keins mit Grafischem Schnickschnack etc. sondern außschließlich mit grundlegenden Ajax Funktionen...


Edit:

Zitat:
Zitat von Plague Beitrag anzeigen
Ähm wenn ich dich jetzt richtig verstanden habe fragst du via AJAX ab ob eine Datei vorhanden ist. Dort bekommst du ja eine Antwort (wie nikosch schon sagte).
Nun kannst du ja beim Empfang dieser AJAX-Nachricht eine funktion aufrufen die grob folgendes macht:

function blubblub() {
document.getElementById('meinButton').style.visibi lity = 'visible';
}

Initial setzt du die Sichtbarkeit einfach auf Hidden.

Ich hoffe ich hab richtig verstanden was du meinst ansonsten einfach noch mal genauer beschreiben...

vg
Wie ich etwas Sichtbar/Unsichtbar mache ist mir klar...

ABER: Ich will nur Unsichtbar machen WENN PhP einen bestimmten eintrag in einer (Mysql) Datenbank findet.

Das aufrufen einer Funktion bringt mir ja nichts wenn diese Funktion nicht weiß was sie tun soll...



Ich probiers mal mit einer einfacheren Beschreibung:

Im Grunde will ich einfach nur von der mittels Ajax aufgerufenen PhP Datei eine Variable an javascript weitergeben...

Geändert von SplitterWind (10.01.2010 um 01:15 Uhr).
SplitterWind ist offline   Mit Zitat antworten
Alt 10.01.2010, 01:12  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.256
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Zitat:
Da ich den Absenden Button erst anklickbar möchte wenn alle Daten stimmen muss auch Javascript mitkriegen ob der Name nun verfügbar ist oder nicht...
Ajax IST Javascript! Deshalb verstehe ich das Problem nicht, außer, dass Du vielleicht kein JS sprichst..
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online   Mit Zitat antworten
Alt 10.01.2010, 01:32  
Neuer Benutzer
 
Registriert seit: 09.01.2010
Beiträge: 4
PHP-Kenntnisse:
Fortgeschritten
SplitterWind befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
Ajax IST Javascript! Deshalb verstehe ich das Problem nicht, außer, dass Du vielleicht kein JS sprichst..
Hm?

Ja das ist mir klar xD...

Wo hab ich denn was anderes behauptet?

ich will mit PHP eine Javascript-Variable verändern.

PHP -> Javascript.

Diese PhP Datei wird mittels AJAX bzw Javascript eingebunden.

Ok... Ich erklärs nochmal Neu...

____________


Ich habe 3 Variablen -> CheckName, CheckEmail, CheckPassword.

Wenn alle 3 Variablen auf 1 stehen wird der Absenden Button angezeigt.



Nun möchte ich aber das CheckName nur dann auf 1 gesetzt wird wenn dieser Name zur Verfügung steht.


Also überprüfe ich mit PHP Ob jemanden diesen Namen schon benutzt.

Funktioniert auch Einwandfrei!


Aber!!! Ich kann mit PHP die Javascript-Variable CheckName nicht verändern.

Aber genau das möchte ich...


ein

<script type="text/javascript">
var checkname=1;
</script>

Funktioniert nicht weil eingebunder Code nicht ausgeführt wird.


Sry aber ich habe keine Ahnung wie man das noch genauer erklären kann geschweige denn was bisher so unverständlich gewesen ist?

Edit:

Zitat:
Ich überarbeite gerade mein Registrationsformular und mittels Ajax überprüft eine PhP Datei ob der gewählte Name bereits existiert und gibt das aus.


Da ich den Absenden Button erst anklickbar möchte wenn alle Daten stimmen muss auch Javascript mitkriegen ob der Name nun verfügbar ist oder nicht...

Geändert von SplitterWind (10.01.2010 um 01:36 Uhr).
SplitterWind ist offline   Mit Zitat antworten
Alt 10.01.2010, 01:50  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.256
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Du brauchst hier nicht patzig werden. Auch nicht typografisch. Der Einzige, der hier nicht versteht bist Du. Deswegen stellst Du ja die Frage.

Zitat:
Diese PhP Datei wird mittels AJAX bzw Javascript eingebunden.
Nein. Sie wird aufgerufen und deren Ausgabe verarbeitet.
Zitat:
ich will mit PHP eine Javascript-Variable verändern.
Das kannst Du nicht. Außer beim Seitenaufruf. Du kannst aber - wie eben gesagt - über Ajax einen Wert anfordern und bei Erhalten alles x-beliebige mit ihm machen, ihn global speichern, ihn gleichauswerten, was auch immer. Ihn nur global speichern macht insofern keinen Sinn, weil sich ja der Button nicht von alleine ändert. Also wirst Du im onreadystatechange-Handler irgendwie die Prüfun antriggern müssen, ob alle Prüfungen erfolgreich waren.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online   Mit Zitat antworten
Alt 10.01.2010, 02:22  
Erfahrener Benutzer
 
Benutzerbild von Phoscur
 
Registriert seit: 01.12.2008
Beiträge: 450
PHP-Kenntnisse:
Fortgeschritten
Phoscur wird schon bald berühmt werdenPhoscur wird schon bald berühmt werden
Standard

Du hast vorher mal von Rückgabewerten gesprochen, vielleicht liegt da der Fehler. Jedenfalls erinnert mich das daran als ich das erste Mal etwas mit AJAX machen wollte.
Von PHP ungewohnt wird bei AJAX ein Callback an einen Request gegeben (und an das onreadystatechange Event gehängt). Der Rückgabewert des Requests hat nichts mit der Rückgabe des Requests zu tun, die Daten, die vom Server zurückkommen, werden an das Callback weitergegeben.

Mit jQuery ist das recht leicht zu verstehen:
Code:
$.get(url, 
        function(data) // das ist das Callback, in diesem Fall eine anonyme Funktion, data ist das was der Browser beim aufruf von der url anzeigen würde.
             {
                 // und hier musst du die Website so manipulieren, dass sie dir etwas entsprechend von data anzeigt
             }
);
Vielleicht siehst du dir auch noch an was eine anonyme Funktion ist.
__________________
Phoscur ist offline   Mit Zitat antworten
Alt 10.01.2010, 03:04  
Neuer Benutzer
 
Registriert seit: 09.01.2010
Beiträge: 4
PHP-Kenntnisse:
Fortgeschritten
SplitterWind befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
Du brauchst hier nicht patzig werden. Auch nicht typografisch. Der Einzige, der hier nicht versteht bist Du. Deswegen stellst Du ja die Frage.

Zitat:
Diese PhP Datei wird mittels AJAX bzw Javascript eingebunden.
Nein. Sie wird aufgerufen und deren Ausgabe verarbeitet.

Zitat:
ich will mit PHP eine Javascript-Variable verändern.
Das kannst Du nicht. Außer beim Seitenaufruf. Du kannst aber - wie eben gesagt - über Ajax einen Wert anfordern und bei Erhalten alles x-beliebige mit ihm machen, ihn global speichern, ihn gleichauswerten, was auch immer. Ihn nur global speichern macht insofern keinen Sinn, weil sich ja der Button nicht von alleine ändert. Also wirst Du im onreadystatechange-Handler irgendwie die Prüfun antriggern müssen, ob alle Prüfungen erfolgreich waren.

Das ist keine Große Hilfe da ich z.b. nicht mal weiß was Ajax am Ende erhält. Einen String?

Zitat:
Response auswerten... Wie?


Was meine zuvor "patzige" Antwort betrifft...



Auf die Frage "Response auswerten... Wie?" erhalte ich die Antwort...

Zitat:
[...]Dann mußt Du den Response entsprechend auswerten [...]
und

Zitat:
Ajax IST Javascript! Deshalb verstehe ich das Problem nicht, außer, dass Du vielleicht kein JS sprichst..

Beides absolut keine Hilfe und ich weiß nach wie vor nicht wie du darauf kommst das ich nicht wüsste das Ajax Javascript ist...


Außerdem finde ich einzeillige Antworten die keine direkte Antwort liefern als recht unsympathisch.

Insbesondere solch weise Antworten wie "Dein Problem ist, das du nicht weiß wies geht"...


Zitat:
Du hast vorher mal von Rückgabewerten gesprochen, vielleicht liegt da der Fehler. Jedenfalls erinnert mich das daran als ich das erste Mal etwas mit AJAX machen wollte.
Von PHP ungewohnt wird bei AJAX ein Callback an einen Request gegeben (und an das onreadystatechange Event gehängt). Der Rückgabewert des Requests hat nichts mit der Rückgabe des Requests zu tun, die Daten, die vom Server zurückkommen, werden an das Callback weitergegeben.

Rückgabewerte... Ja was die Funktionen meines Frameworks angeht! Was also rein gar nichts damit zu tun hat und auch das hilft mir nicht wirklich weiter bei der Frage:

Zitat:
Response auswerten... Wie?
Ich möchte doch lediglich mit Javascript und PhP in beide Richtungen kommunizieren... :\


Daher noch eine Frage...


Ist das Auswerten des Response so das man dabei für Javascript verwendbare Variablen erhält sehr komplex oder machbar?

Andernfalls schau ich mir doch nochmal ein anderes AJAX-Framework an...
SplitterWind ist offline   Mit Zitat antworten
Alt 10.01.2010, 03:22  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 34.256
PHP-Kenntnisse:
Fortgeschritten
nikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz seinnikosch kann auf vieles stolz sein
Standard

Zitat:
Response auswerten... Wie?
Ist das Auswerten des Response so das man dabei für Javascript verwendbare Variablen erhält sehr komplex oder machbar?
Diese Informationen liefert die Doku Deines Frameworks.
http://www.php.de/php-einsteiger/543...produkten.html (Fachfragen zu bestimmten Softwareprodukten)

Zitat:
Dein Problem ist, das du nicht weiß wies geht
Zitat:
Der Einzige, der hier nicht versteht bist Du
war eine Antwort auf Deine tolle „Ich erklärs Dir nochmal“-Orgie.

Beschäftige Dich bitte nochmal mit dem Prinzip von Ajax. Wenn Dein Framework nicht selbsterklärend ist, schau noch mal rein, wie das Zusammenspiel zwischen Response, Responseformat und onreadystatechange-Handler ist.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online   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] Ajax response in variable Buschdieb JavaScript, Ajax und mehr 13 22.11.2009 12:33
Problem Undefined variable: banbanban PHP Tipps 2009 5 04.03.2009 17:55
Undefined variable Undefined property: block xxJJxx PHP Tipps 2008 16 05.08.2008 15:30
Variable über GET erhalten? PHP Tipps 2005-2 3 15.07.2005 18:04

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
ajax variable an php übergeben, ajax variable, ajax php variable ändern, ajax php funktion aufrufen, http://www.php.de/javascript-ajax-und-mehr/63194-ajax-variable-von-php-erhalten-auf-moeglichst-simple-weise.html, ajax javascript variable, ajax php variable, ajax variable zurückgeben, ajax variable neu setzen, javascript variable an php ajax, javascript variable an php übergeben ajax, ajax php variablen, php variable ajax, ajax variable veraendern, php wie finde ich heraus welche variablen in einer datei existieren, ajax variablen, ajax variable an php, php parameter zurückgeben ajax, ajax variable ändern, ajax rückgabewertjavascript funktion

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