kostenloser Webspace werbefrei: lima-city


PHP in JavaScript?

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    seth93

    seth93 hat kostenlosen Webspace.

    Hallo,
    da ich kein JS richtig beherrsche hab ich mir ein fertigen Ajax-Chat gedownloaded.
    Da kann jeder aber seinen Namen ändern und ich wollt das halt für meine Seite nutzen.
    Ich hab dann halt rumgesucht wo der Benutzername immer verarbeitet wird und denke ich hab die Stelle gefunden.
    function sendComment(){
     asb_loadingChange(true);
     if (xmlHttp){
      var txtMessage = encodeURIComponent(document.frmshoutbox.txtmessage.value);
      var txtName    = encodeURIComponent(document.frmshoutbox.txtname.value);
      if(use_captcha) var captcha_code    = encodeURIComponent(document.frmshoutbox.captcha_code.value);
      else var captcha_code='';
      if (txtMessage == '' || txtName == '')
        alert("Bitte fuelle Name und Nachricht aus");
      else{
       if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0){
        xmlHttp.open('POST', webpath+'setdata.php');
        xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        xmlHttp.send('message='+txtMessage+"&name="+txtName+"&last_request="+last_request+"&captcha_code="+captcha_code);


    Zeile 5 var txtName.
    Ich möchte dort aber ein Usernamen aus meiner Datenbank haben.
    Ich kann jedoch nur die Daten per PHP ausgeben und die Datei lautet auch noch name.js .
    Wie krieg ich jetzt einen Usernamen da rein?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. seth93 schrieb:
    Zeile 5 var txtName.
    Ich möchte dort aber ein Usernamen aus meiner Datenbank haben.
    Ich kann jedoch nur die Daten per PHP ausgeben und die Datei lautet auch noch name.js .
    Wie krieg ich jetzt einen Usernamen da rein?

    Lass PHP doch einfach das JS, und damit auch den Namen, schreiben:
    <?php
    session_start();
    mysql_connect(USER,PASS,HOST);
    mysql_select_db(DB);
    $result = mysql_query('SELECT name FROM user WHERE id = "'.$_SESSION['ID'].'"') OR die(mysql_error());
    while($row = mysql_fetch_assoc($result)){
      $name = $row['name'];
    }
    ?>
    [Z 1-4]
    var txtName    = '<?=$name;?>';
    [Rest]

    << nicht getestet
    Ich bin im vorliegenden Beispiel davon ausgegangen, dass sich der User eingeloggt hat und seine ID in die Session gespeichert wurde. Das PHP-Skript kannst du genau wie JS in HTML einbinden.

    Viel Erfolg !
  4. Autor dieses Themas

    seth93

    seth93 hat kostenlosen Webspace.

    Ok, das Script ist über 200 Zeilen lang.
    Es ist auch eien JS-Datei.
    Ich probier mal gleich aus, ob da PHP funktioniert.
    Ich hab die Stelle jetzt ganz sicher gefunden.

    Und ja, der Benutzername ist schon eingeloggt.
    Kannst auch einfach die Variable $username nehmen.



    EDIT:
    Könnte die JS Datei ja zu ner PHP machen und dann würde es auch gehen, aber dann müsste ich überall suchen, wo die JS-Datei benutzt wird und ändern.
    Das wird dann doch zu viel arbeit und am Ende funktioniert s bestimmt wieder nicht ^^
    Kann man mit JS keine Daten aus der DB auslesen lassen?


    Beitrag zuletzt geändert: 20.4.2009 21:29:14 von seth93
  5. seth93 schrieb:
    EDIT:
    Könnte die JS Datei ja zu ner PHP machen und dann würde es auch gehen, aber dann müsste ich überall suchen, wo die JS-Datei benutzt wird und ändern.
    Das wird dann doch zu viel arbeit und am Ende funktioniert s bestimmt wieder nicht ^^
    Kann man mit JS keine Daten aus der DB auslesen lassen?


    ho ;)

    JS kann keine DBs auslesen. Es ist eine Klient-Seitige Anwendung. (Mit HTML kannst du auch keine DBs auslesen lassen)

    Aber warum willst du die JS Datei zu einer PHP Datei machen?
    Ich kenne die Dateien nicht, die du heruntergeladen hast, aber ich gehe mal davon aus, dass du eine index.php Datei hast, in die bloß eine .js Datei includiert wird. (Vermutlich via Header... Nehme ich mal an.)
    Was du noch machen musst, ist den Code von progger in eine (zB) Nickname.php zu schreiben, und diese dann in deine index.php Datei zu includieren.

    Oder habe ich da was falsch verstanden, und das ganze ist nicht so aufgebaut, wie von mir beschrieben?

    lg
    Sincer

    PS: Ich finde den Lösungsweg von progger wirklich gut. Ist meiner Meinung nach genau das, was du brauchst... Ist halt immer blöd, wenn man so ein riesen Paket, wie diesen Chat, herunterlädt, und sich erst einlesen muss.

    Wenn du aber wirklich die JS Datei zu einer PHP Datei umändern / umbenennen musst (was ich nicht glaube), dann gibt es sicher einen batch / shell Befehl, der dieses Problem löst... (ich bin mir sicher, über sowas schon einmal gestolpert zu sein... hab den Befehl nur vergessen XD)
  6. seth93 schrieb:
    Könnte die JS Datei ja zu ner PHP machen und dann würde es auch gehen, aber dann müsste ich überall suchen, wo die JS-Datei benutzt wird und ändern.
    Das wird dann doch zu viel arbeit und am Ende funktioniert s bestimmt wieder nicht ^^

    Naja, jeder ordentliche Editor bietet eine Funktion zum Suchen & Ersetzen ;-)
    Es gibt aber auch die Alternative, das PHP-Skript in das bestende Java-Skript zu inkludieren; natürlich auf Kosten der Laufzeit:

    z.B. http://www.artlebedev.com/tools/technogrette/js/include/
  7. sincer schrieb:
    JS kann keine DBs auslesen.
    Alles andere wäre ja auch schwachsinn, denn dann könnte jeder im Quelltext die Zugangsdaten zur Datenbank sehen. :lol:
  8. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!