php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.09.2009, 12:43  
Benutzer
 
Registriert seit: 05.06.2009
Beiträge: 50
PHP-Kenntnisse:
Anfänger
rodger befindet sich auf einem aufstrebenden Ast
Standard ajax und mysql - Klick auf link soll Datenbank-Update ausführen

hi,

ich habe in einer html-Datei einen Link

HTML-Code:
 <a href="javascript:sndReq('foo')">###FRIEND_LL###</a> 
welcher Javascript ausführt

PHP-Code:
function createRequestObject() {
    var 
ro;
    var 
browser navigator.appName;
    if(
browser == "Microsoft Internet Explorer"){
        
ro = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        
ro = new XMLHttpRequest();
    }
    return 
ro;
}

var 
http createRequestObject();

function 
sndReq(action) {
    
http.open('get''typo3conf/ext/communityfeatures/pi1/rpc.php?action='+action);
    
http.onreadystatechange handleResponse;
    
http.send(null);
}

function 
handleResponse() {
    if(
http.readyState == 4){
        var 
response http.responseText;
        var 
update = new Array();

        if(
response.indexOf('|' != -1)) {
            
update response.split('|');
            
document.getElementById(update[0]).innerHTML update[1];
        }
    }

welches dann widerum eine php-Datei aufruft:

PHP-Code:
<?php
header
("Cache-Control: no-cache");
header("Pragma: nocache");

  switch(
$_REQUEST['action']) {
    case 
'foo':

      echo 
"foo|foo done";


//hier würde ich nun gerne noch ein datenbank-update einbauen


      
break;
      
      
      

      
      }
      

?>
alles ganz nett, aber ich krieg es nicht gebacken, hier ein mysql-Update vorzunehmen, die normale Syntax scheint nicht zu greifen. Habt ihr einen Tipp für mich, wie ich das ganze noch ergänze um ein Update?

Grüße, Rodger

Geändert von rodger (30.09.2009 um 12:58 Uhr).
rodger ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 30.09.2009, 12:48  
Erfahrener Benutzer
 
Registriert seit: 28.05.2008
Beiträge: 2.094
PHP-Kenntnisse:
Fortgeschritten
rudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nett
Standard

Zitat:
die normale Syntax scheint nicht zu greifen
jo, das ist ein lürchterfiches Gefühl Wie sah denn dein update Versuch aus? Was kommt denn als Request auf server-Seite an? (var_dump verwenden oder zum loggen var_export mit 2. param true).


grüße
__________________
++++ Wieder einer ins Netz gegangen: Phishers Fritz zufrieden ++++
Blog
rudygotya ist offline  
Alt 30.09.2009, 12:51  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.269
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Hallo,

Code im switch kann nur hinter einem case ausgeführt werden. Wenn das UPDATE also bei $_REQUEST["action"] == "foo" ausgeführt werden soll, muss es vor dem break stehen. Bei einer anderen Bedingung musst du ein neues case hinzufügen.

PHP: switch - Manual
Chriz ist gerade online  
Alt 30.09.2009, 12:54  
Benutzer
 
Registriert seit: 05.06.2009
Beiträge: 50
PHP-Kenntnisse:
Anfänger
rodger befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
jo, das ist ein lürchterfiches Gefühl Wie sah denn dein update Versuch aus? Was kommt denn als Request auf server-Seite an? (var_dump verwenden oder zum loggen var_export mit 2. param true).
nun, es ist halt nervig, wenn man diverese Kombis ausprobiert, mit bewährten Snippets und es klappt nicht und man weiß nicht warum. Es scheint mir daher eher so, als würde hier noch etwas zusätzlich benötigt werden, nur was? Also ein normales update würde ich zb so machen:

PHP-Code:
$update "UPDATE tx_communityfeatures SET user1_uid = 0 WHERE bestaetigt = 1"
   
$result mysql_query($update); 
aber wie gesagt, damit gibt es kein update. ob es daran liegt, das die datei rpc.php über javascript aufherufen wird?
rodger ist offline  
Alt 30.09.2009, 12:56  
Erfahrener Benutzer
 
Registriert seit: 28.05.2008
Beiträge: 2.094
PHP-Kenntnisse:
Fortgeschritten
rudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nett
Standard

Was kommt denn als Request auf server-Seite an?
__________________
++++ Wieder einer ins Netz gegangen: Phishers Fritz zufrieden ++++
Blog
rudygotya ist offline  
Alt 30.09.2009, 12:57  
Benutzer
 
Registriert seit: 05.06.2009
Beiträge: 50
PHP-Kenntnisse:
Anfänger
rodger befindet sich auf einem aufstrebenden Ast
Standard

@chris

klar, du hast natürlich recht. Werde das gleich im Beispiel korrigieren. Problem ist leider, das es auch vor dem break; wo es ja hingehört, nicht funktioniert.
rodger ist offline  
Alt 30.09.2009, 13:02  
Benutzer
 
Registriert seit: 05.06.2009
Beiträge: 50
PHP-Kenntnisse:
Anfänger
rodger befindet sich auf einem aufstrebenden Ast
Standard

@rudygotya

Ergebniss von var_export ist:

PHP-Code:
Warningmysql_query() [function.mysql-query]: Access denied for user 'xxx'@'localhost' (using passwordNOin /xxx/typo3conf/ext/communityfeatures/pi1/rpc.php on line 19

Warning
mysql_query() [function.mysql-query]: A link to the server could not be established in /xxx/typo3conf/ext/communityfeatures/pi1/rpc.php on line 19
false 
also sieht so aus, als würde da irgendeion passwort nicht übergeben oder? was kann man da machen?

Geändert von rodger (30.09.2009 um 13:06 Uhr).
rodger ist offline  
Alt 30.09.2009, 13:12  
Benutzer
 
Registriert seit: 05.06.2009
Beiträge: 50
PHP-Kenntnisse:
Anfänger
rodger befindet sich auf einem aufstrebenden Ast
Standard

wenn ich den Code nun mit

PHP-Code:
mysql_connect($buddy_dbhost$buddy_dbuser$buddy_dbpass);
    
//Select Database
mysql_select_db($dbname) or die(mysql_error()); 
und den entsprechenden variablenzuweiseungen ergänze, kommt die Fehlermeldung nicht mehr, aber upgedatet wird trotzdem nischts
rodger ist offline  
Alt 30.09.2009, 13:22  
Benutzer
 
Registriert seit: 05.06.2009
Beiträge: 50
PHP-Kenntnisse:
Anfänger
rodger befindet sich auf einem aufstrebenden Ast
Standard

liebe Leute, nun klappt es endlich. manchmal hilft es ja schon, wenn man einfach nochmal alles aufschreibt klingt ja manchmal etwas floskelhaft dieser satz, aber es bewahrheitet sich ja auch gelegentlich. Es klappt also nun, ich hatte einen falschen Namen bei der Tabelle angegeben.

Danke für eure Antworten, rodger
rodger ist offline  
 


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
MySQL UPDATE: Feld überall / in allen Tabellen updaten Lightware Datenbanken 13 25.09.2009 12:44
[Erledigt] gesamte Spalte in Array abspeichern Kotbatzen PHP Tipps 2009 23 05.09.2009 00:01
mysql datenbank auf shared host? Necronomicon Datenbanken 2 18.01.2009 19:29
Klick auf Seitenobjekt (Link mit onClick Ereigniss) mit JScript simulieren Stephan_87 JavaScript, Ajax und mehr 1 22.12.2008 21:50
Umlaute in Datenbank MYSQL schreiben sebastian1986 Datenbanken 3 09.09.2008 16:01
Link aus einer Datenbank einfügen der Seb Datenbanken 10 11.03.2008 16:50
[Erledigt] MySQL - ERROR 1044 bei erstellen einer Datenbank _youngenterpriser_ Datenbanken 2 05.02.2008 17:56
Mit php dynamisch Namen von Bildnamen sowie Pfad in mysql Datenbank speichern mallmis PHP Tipps 2008 1 19.11.2007 23:04
Php script über link ausführen!?? Funky_ PHP Tipps 2006 2 20.06.2006 11:32
UPTATE einer MySQL Datenbank mit Variable hypo PHP Tipps 2006 2 11.06.2006 16:09
[Erledigt] MySQL Ausfallsicherheit einer Datenbank Datenbanken 2 08.06.2006 11:21
DB Update mit Link-Variable MYSQL medico Datenbanken 5 07.06.2006 23:18
UPDATE count nach Link Aufruf ? PHP Tipps 2006 9 22.01.2006 14:53
[Erledigt] mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:29
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:29

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
ajax nach klick update ausführen, php mysql query on link klick, ajax mysql update, http://www.php.de/php-einsteiger/59480-ajax-und-mysql-klick-auf-link-soll-datenbank-update-ausfuehren.html, mysql update ajax, ajax update mysql, update mysql ajax, bei klick mysql aktion durchführen, ajax mysql eintrag ausführen, link update mysql, ajax db update beim klicken, mysql update mit javascript, ajax aktion ausführen, mysql update ausführen, link klick datenbank loggen, php ajax soll ein update ausführen, wert mit einem klick updaten mysql, klick auf link in db speichern, ajax datenbank update, mysql update per ajax

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:56 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