Erreur de syntaxe SQL

Résolu
Kerborg Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -  
Kerborg Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,




Sur site local tout est OK
Sur site distant = erreur de syntax SQL.

Qu'est ce qui pourrait expliquer cette erreur de syntaxe entre les deux ? Merci.

6 réponses

Utilisateur anonyme
 
Bonjour, il faudrait voir un extrait de code et la requête SQL en question. Ou alors savoir si la version de ta base de données (qui n'est pas précisée non plus) est la même que sur ton ordinateur. Il peut s'agir aussi d'une configuration différente.
0
Kerborg Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
Je n'y connais pas grand chose alors voilà :
dans fichier index.php
code : <?php echo rating_bar('groupe','5'); ?>

dans fichier _drawrating.php :
<?php

function rating_bar($id,$units='',$static='') {

require('_config-rating.php'); // get the db connection info

//set some variables
$ip = $_SERVER['REMOTE_ADDR'];
if (!$units) {$units = 10;}
if (!$static) {$static = FALSE;}

// get votes, values, ips for the current rating bar
$query=mysql_query("SELECT total_votes, total_value, used_ips FROM $rating_dbname.$rating_tableName WHERE id='$id' ")or die(" Error: ".mysql_error());


// insert the id in the DB if it doesn't exist already
if (mysql_num_rows($query) == 0) {
$sql = "INSERT INTO $rating_dbname.$rating_tableName ('id','total_votes', 'total_value', 'used_ips') VALUES ('$id', '0', '0', '')";
$result = mysql_query($sql);
}

$numbers=mysql_fetch_assoc($query);


if ($numbers['total_votes'] < 1) {
$count = 0;
} else {
$count=$numbers['total_votes']; //how many votes total
}
$current_rating=$numbers['total_value']; //total number of rating added together and stored
$tense=($count==1) ? "vote" : "votes"; //plural form votes/vote

// determine whether the user has voted, so we know how to draw the ul/li
$voted=mysql_num_rows(mysql_query("SELECT used_ips FROM $rating_dbname.$rating_tableName WHERE used_ips LIKE '%".$ip."%' AND id='".$id."' "));

// now draw the rating bar
$rating_width = @number_format($current_rating/$count,2)*$rating_unitwidth;
$rating1 = @number_format($current_rating/$count,1);
$rating2 = @number_format($current_rating/$count,2);


if ($static == 'static') {

$static_rater = array();
$static_rater[] .= "\n".'<div class="ratingblock">';
$static_rater[] .= '<div id="unit_long'.$id.'">';
$static_rater[] .= '<ul id="unit_ul'.$id.'" class="unit-rating" style="width:'.$rating_unitwidth*$units.'px;">';
$static_rater[] .= '<li class="current-rating" style="width:'.$rating_width.'px;">Currently '.$rating2.'/'.$units.'</li>';
$static_rater[] .= '</ul>';
$static_rater[] .= '<p class="static">'.$id.'. Rating: <strong> '.$rating1.'</strong>/'.$units.' ('.$count.' '.$tense.' cast) <em>This is \'static\'.</em></p>';
$static_rater[] .= '</div>';
$static_rater[] .= '</div>'."\n\n";

return join("\n", $static_rater);


} else {

$rater ='';
$rater.='<div class="ratingblock">';

$rater.='<div id="unit_long'.$id.'">';
$rater.=' <ul id="unit_ul'.$id.'" class="unit-rating" style="width:'.$rating_unitwidth*$units.'px;">';
$rater.=' <li class="current-rating" style="width:'.$rating_width.'px;">Currently '.$rating2.'/'.$units.'</li>';

for ($ncount = 1; $ncount <= $units; $ncount++) { // loop from 1 to the number of units
if(!$voted) { // if the user hasn't yet voted, draw the voting stars
$rater.='<li><a href="db.php?j='.$ncount.'&q='.$id.'&t='.$ip.'&c='.$units.'" title="'.$ncount.' out of '.$units.'" class="r'.$ncount.'-unit rater" rel="nofollow">'.$ncount.'</a></li>';
}
}
$ncount=0; // resets the count

$rater.=' </ul>';
$rater.=' <p';
if($voted){ $rater.=' class="voted"'; }
$rater.='>'.$id.' Rating: <strong> '.$rating1.'</strong>/'.$units.' ('.$count.' '.$tense.' cast)';
$rater.=' </p>';
$rater.='</div>';
$rater.='</div>';
return $rater;
}
}
?>
0
Kerborg Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
savoir si la version de ta base de données (qui n'est pas précisée non plus) est la même que sur ton ordinateur = je ne sais pas où regarder.
0
Utilisateur anonyme
 
Tu sais à quel endroit il se plante? Tu pourrais retracer ce qui se passe en affichant les différentes variables que tu reçois pour voir s'il y en a une qui peut perturber la requête SQL.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Kerborg Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
Comment on fait ça ? Merci.
0
Utilisateur anonyme
 
Tu peux simplement mettre des "echo" de tes requêtes, variables etc.

Par exemple, pour voir ce que contient "query" :

echo($query) juste après.
0
Kerborg Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
Merci à Rocky_123. Ton conseil sur la config a payé.
J'ai vérifié, ma config était bonne. Mais je n'avais pas vu que chez mon hébergeur, après avoir créé la base et lui avoir attaché un utilisateur, il fallait que j'attribue les privilèges.
Désormais tout fonctionne.
OUFF ! enfin...
0