Probleme de serveur ? ou de code ...

Evazion -  
Breub62 Messages postés 3452 Statut Membre -
Bonjour,

J'ai un problème le code qui suit fontionne à merveille sur un serveur mais pas sur un autre... d'ou le problème peut-il venir, du serveur et de sa configuration ? ou du code ( mal coder, je suis une noob) si c'est mal coder pourquoi fonctionne t-il sur un serveur

Sur le serveur ou le code ne fontionne pas si count==0 alors il inscrit correctement les données dans la base de donnée mais si ce n 'est pas le cas alors je suis redirigé vers le dernier post créer ... donc le else n'est pas pris en compte ...

Voici mon code

<?

include ("config.php");

if ($_POST["post"]) {
$post=$_POST["post"];
$select = mysql_query("SELECT * FROM 'allposts' WHERE 'post'='$post'");
$count = mysql_num_rows($select);
if($count == 0){
mysql_query("INSERT INTO allposts VALUES(NULL, '$post', '1')");
}
else
{
$donnee = mysql_fetch_assoc($select);
header('Location: post.php?id='.$donnee['id']);
}
$x=mysql_query("SELECT * FROM allposts ORDER BY id DESC LIMIT 1");
while ($y=mysql_fetch_assoc($x)){
$id=$y['id'];
}
?>
<script type="text/javascript"> window.location.href="<?=$url_site?>post.php?id=<?=$id?>";</script>
<?
}
?>
A voir également:

4 réponses

Breub62 Messages postés 3452 Statut Membre 369
 
J'ai déjà eu ce genre de problème (fonctionne en local pas en ligne). Il se peut que l'erreur soit toute bête...

Commence par remplacer les <? par <?php
1
Evazion
 
Hello Merci pour ta réponse mais hélas aucun changement.
0
Breub62 Messages postés 3452 Statut Membre 369
 
Sinon pour le count==0, c'est normal que si ce n'est pas le cas il te redirige puisque c'est ce que tu lui demande...

else
{
$donnee = mysql_fetch_assoc($select);
header('Location: post.php?id='.$donnee['id']);
} 
1
Evazion
 
Oui mais c'est un système pour éviter les doublons donc si id est vide on inscrit mais si il est pas vide ( else) m'envoyer sur le post qui existe déjà . Mais la si le post existe déjà je ne suis pas redirigé vers le post.php mais vers le dernier post créer ... XD
0
Breub62 Messages postés 3452 Statut Membre 369
 
Donc si j'ai bien compris, dans tous les cas tu as une insertion au lieu de la redirection vers le post trouvé?
0
Evazion
 
euh une insertion uniquement si l'id est vide sinon pas d'insertion mais une redirection vers le dernier post créer
0
Breub62 Messages postés 3452 Statut Membre 369
 
Oui ça c'est ce que tu veux... Mais quel est donc le problème???

donc le else n'est pas pris en compte ... 
0
Evazion
 
non ce n'est pas ce que je veux je veux que si l'id existe alors qu'il m'envoie sur le post existant

si le visiteur tape Hello cela cherche dnas la base de donnée si hello existe si oui alors on l'envoie sur le post avec pour titre hello sinon on insert hello puis biensur on le redirige vers son post
cela fonctionne sur un serveur mais pas sur un autre tout les 2 online sous linux
0
Breub62 Messages postés 3452 Statut Membre 369
 
$ost=$_POST["post"]; 
Tu n'aurais pas oublié le p de post?
0
Breub62 Messages postés 3452 Statut Membre 369
 
Ainsi sur un serveur vieux, il considère que c'est pareil que $_POST['post'] et sur l'autre plus récent, il ne reconnait pas la variable en question
0
Evazion
 
oui désolé mais cela ne viens pas de la erreur de frappe de ma part lors de la création du post désolé je modifie
0
Breub62 Messages postés 3452 Statut Membre 369
 
OK alors je vois plus désolé
:-(
0
Evazion
 
Oki merci quand même d'avoir essayer de m'aider je pense que cela viens de la configuration de php ou de mysql T.T
0
Breub62 Messages postés 3452 Statut Membre 369
 
Probablement. Il faut que tu regarde quelle version de php est sur chaque serveur et que tu regarde chaque fonction pour voir si elle existait sous cette version.
0