[RESOLU] Petit souci de script

Petit nouveau ! | 9 Messages

13 oct. 2013, 01:43

Bonjour,

Impossible de trouver d'où viens l'erreur : Notice: Uninitialized string offset
Je bloque sur un truc tout bête j'en suis certain.

grrrrrrrr sacré php ^^
<?php

if (empty($_POST['saisie'])){
echo "Renseigner le champs svp";
}
else{
$nbcaract = strlen($_POST['saisie']);
$chaine=$_POST['saisie'];
$envers="";
for ($i = $nbcaract ; $i >= 0 ; $i--) {
$envers.= $chaine{$i};
}
echo "la variable est" .$envers;
}
?>

Eléphant du PHP | 170 Messages

13 oct. 2013, 03:06

Bonjour,

l'indice du premier caractère est 0 ($chaine{0} ou $chaine[0])
l'indice du dernier caractère est donc le nombre de caractères de la chaine -1 ($nbcaract-1)

$chaine{$nbcaract} n'existe pas => "Notice: Uninitialized string offset"

(sinon il existe la commande strrev())

Mammouth du PHP | 2278 Messages

13 oct. 2013, 09:13

Petit souci au sujet du titre INUTILE du message. On est quasi certain que, si tu postes un message ici, c'est que tu as un souci.
Pour mémoire :
offset c'est le décalage par rapport à un point de départ; dans le cas d'un tableau, c'est l'indice:
$tableau[$x]; offset $x
Unitialized : pas initialisé; on n'y a pas déjà mis une valeur. (n'a pas été initialisé)
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Petit nouveau ! | 9 Messages

13 oct. 2013, 11:28

@ blof : avec la commande strrev() pas de souci mais je tenais à utiliser un tableau pour apprendre à les manier. Merci pour ton aide.
@ sirakawa : Je sais bien que le titre fait un peu nul lol mais je ne savais pas quoi mettre ^^ donc j'ai mis ça. Merci de ton aide.

Désolé si je vous embête avec mes question mais je débute....
Tout fonctionne à présent.

Merci bcp :-)