Soit quelque chose m'échape soit y en a qui seront surpris!!!! [Php] - Programmation
Marsh Posté le 19-04-2001 à 15:53:24
oui, tu peus forcer le type, en mettanjt le mot cle STRING devat ta variable
ex: (c'est du style mais la syntaxe est approximative..)
var = implode( )
var2 = string var
et la var2 est une string de chez string (normalement)
Marsh Posté le 19-04-2001 à 16:17:12
ça ne marche pas non plus, merci de ton idée qd même.
A mon avis, implode ne termine pas la chaîne comme il faudrai
(caractère de fin de chaîne)
Qu'est-ce que vous en penser et surtout si vous avez une idée pour y remédier?
Marsh Posté le 19-04-2001 à 16:41:30
En fait, quelque chose m'échappe! Ce qui ne me surprends pas!
J'ai refait un exemple simple avec un implode et ça marche???
Il doit y avoir autre chose, je vais chercher. C'est peut être dû au fait que j'ai deux curseurs et je fait donc un erreur??
J'y retourne et je vous tiens au courant!
Marsh Posté le 19-04-2001 à 17:21:27
En fait, ça vient de ma variable $points.
J'utilise une fonction $points=fonction($chaine);
ça me renvoie une chaine à partir d'une autre(modifiée).
En fait le principe de mon prog c'est lire des coordonnées sous forme de chaine, de les modifier et de les inscrire dans ma table Oracle.
Est-ce qu'il existe un caractère fin de chaîne en PHP?
Marsh Posté le 19-04-2001 à 17:36:18
J'ai pas tout compris, mais dans ton cas, si tu utilises implode(",",$points); $points doit être un tableau, pas une chaîne de caractère.
@+
Marsh Posté le 19-04-2001 à 17:45:25
C'est bon, j'ai trouvé, c'est ma fonction qui devait faire des erreurs en fin de chaîne de caractère mais je voudrais bien savoir qd même s'il y a un caractère de fin de chaîne en PHP?
Marsh Posté le 19-04-2001 à 17:55:17
Non, il n'y a pas de caractère de fin de chaîne en PHP, c'est dynamique.
Marsh Posté le 19-04-2001 à 15:41:23
Je fais un update dans une table Oracle.
Voici deux versions :
$conn = Ora_Logon("scott","tiger" );
$newcentre = ora_open($conn);
1ère version:
***********************************
$points est un tableau de valeurs.
$co=implode(",",$points);
$cf est une chaîne.
$querycentre="update POLYGONE set CENTRE_N='".$cf."', COORDONNEES_N='".$co."' where NUM_COMMUNE='29040'";
ora_parse($newcentre,$querycentre);
ora_exec($newcentre);
2ème version
********************
je remplace la ligne de implode par:
$co="84,846,456,214,575";
Le problème : la 1ère version donne une erreur:
Warning: Ora_Parse failed (ORA-01756: une chaîne entre apostrophes ne se termine pas correctement -- while processing OCI function OPARSE) in c:\web\application\catd_php.php on line 171
La deuxième version marche sans problèmes.
A mon avis, la chaîne retournée par implode() n'est pas reconnue comme une chaîne par Oracle. Est-ce que l'on peut forcer le type? Je ne vois pas?