Wordpress / Direkte Änderung durch mysql_query

die-klobrille

Mitglied
Hi Jungs (und Mädels)!

Sitz jetzt schon die halbe Nacht an Wordpress, um gewisse Dinge für mich anzupassen. Ich glaube, dass ich mittlerweile den Wald vor lauter Bäumen nicht mehr sehe ...

Warum bitte funktioniert die folgende mysql_query nicht? oO Da ist doch kein Syntaxfehler und nixx drin - oder irre ich mich?

PHP:
global $wpdb; // Verbindung zur Datenbank aufgebaut

if(($coins >= 250) && ($coins < 500)) // Ab 250 Coins soll jeder ein Autor sein
		{
		update_usermeta( $current_user->ID, 'wp_user_level', "2" ); // User-Level
		
// Rechte ändern:

		mysql_query('
		UPDATE 
		wp_usermeta
		
		SET 
		meta_value = "a:1:{s:6:"author";b:1;}"
		
		WHERE 
		meta_key = "wp_capabilities",
		user_id = "1803";' // Testuser-ID
		);
		}

Um folgendes festzuhalten: in die if-Schleife geht er definitiv! Nur die Sachen in der Datenbank (mysql_query) ändert er nicht ...




Könnt ihr da ein Fehler entdecken?



Sorry, ist schon spät ... -.-

Danke euch!!

LG
Marcel
 
Zuletzt bearbeitet:
Manchmal könnt ich mir selber in den Popo beißen ...

Die korrekte Syntax müsste natürlich lauten:

PHP:
mysql_query('
		UPDATE 
		`wp_usermeta` 
		
		SET 
		`meta_value` = \'a:1:{s:6:"author";b:1;}\' 
		
		WHERE 
		`wp_usermeta`.`user_id` = 1803 
		AND
		`wp_usermeta`.`meta_key` = \'wp_capabilities\'
		
		LIMIT 1;'
		);

Der Fehler lag beim AND - ich hatte ein Komma benutzt, das geht wohl nicht.

Erledigt, danke trotzdem :)
 
Hallo,

Auch wenn sich das Thema schon erledigt hat - eines will ich noch loswerden.



Es gibt keine if Schleifen, sondern nur if Abfragen!

Bitte verzeih mir dass ich deswegen einen Post erstelle, jedoch stellen sich mir die Nackenhaare auf, wenn ich etwas über "if-Schleifen" lese. :D

Argh, natürlich :D Hast Recht ;) Danke, werd auf meine Wortwahl achten.
 
Zurück