2010-12-04 34 views
0

J'utilise ajax pour envoyer un paramètre d'URL vote_status à un script qui met à jour ma table db.Utilisation de la constante non définie

Il insère des données mais par exemple si vote_status=up j'obtiens cet avis.

Utilisation d'une constante indéfinie jusqu'à - supposé 'up'

et si vote_status=down je reçois

Utilisation d'une constante indéfinie jusqu'à - supposé 'up'

Utilisation de constante constante indéfinie - supposé 'bas'

Ci-dessous une partie du script sur lequel je reçois des avis.

$vote_status = $_POST['vote_status']; 

     switch ($vote_status) 
     { 
     case up: 
      $wpdb->query($wpdb->prepare("UPDATE wp_posts SET up=up+1 WHERE post_id = $vote_post_id")); 
      echo "Up Added!"; 
      break; 
     case down: 
      $wpdb->query($wpdb->prepare("UPDATE wp_posts SET down=down+1 WHERE post_id = $vote_post_id")); 
      echo "Down Added!"; 
      break; 
     case block: 
      echo "Already Voted!"; 
      break; 
     } 

Je ne sais pas comment résoudre ce problème. Le script me semble bien.

+0

les conseils sont là! – stillstanding

+0

lol, je n'ai pas souvent utilisé les instructions switch auparavant. – Noob

Répondre

4

Entourez les mots "haut", "bas" et "bloc" entre guillemets. Actuellement, PHP les interprète comme des constantes.

case "up": 
... 
case "down": 
... 
case "block": 
... 
+0

Ahh merci! Je devrais revoir php de base une fois de plus .. – Noob

+0

Ou, apprenez comme vous allez. :) L'expérience est le meilleur professeur. – RabidFire