Essaye de convertir tes chaines en UTF8 avant de les entrer dans ta base.
Sinon, plutôt que t'utiliser du simple SQL, essaye PDO, ca facilite la vie.
Pour ton exemple ca donnerait:
// insertion d'une ligne
$nom = 'one';
$valeur = 1;
$stmt->execute();
// insertion d'une autre ligne avec des valeurs différentes
$nom = 'two';
$valeur = 2;
$stmt->execute();
?>
(A savoir que pour Oracle tu peux même entrer des des images comme ceici:)
Citer
<?php
$db = new PDO('oci:', 'scott', 'tiger');
$stmt = $db->prepare("insert into images (id, contenttype, imagedata) " .
"VALUES (?, ?, EMPTY_BLOB()) RETURNING imagedata INTO ?");
$id = get_new_id(); // fonction pour allouer un nouvel ID
// assumons que nous récupérons un fichier depuis un formulaire
// vous pouvez trouver plus de détails dans la documentation de PHP
La variable NLS_LANGUAGE définit automatiquement la langue et l'encodage à utiliser en FR-utf8.
C'est gentil pour pdo mais c'est pas ce que je veux. Bien sûr que les appels et insert à la base sont fonctionnels, mais moi je veux créer un script sql, et là je bosse en quelque sorte sur le début du squelette de ce script.
Un script adapté à un maximum de plateformes de gestion de bdd.
Le type blob est reconnu par la plupart des nouvelles versions de bdd, pas qu'oracle
Citer : Angellore
EDIT: Ha oui, essaye plutôt une apostrophe simple, ca devrait mieux marcher.
insert into pae
("PRENOMSTAG, NOMSIGN, NOMTUT, TELTUT, MAILTUT, ADRLIEU, ADRENVCONV, DATED, DATEF, DESCRIPTIF, NOM_STAGIAIRE, ID_STAGIAIRE")
values
("'Herve2', 'Montier', 'Montier', '0678513495', 'g-montier@carabosse.com', '12 rue du taf', '12 rue du taf', '111007', '121207', 'stage de stagiation', 'Bricka', INCREM.nextval");
("PRENOMSTAG, NOMSIGN, NOMTUT, TELTUT, MAILTUT, ADRLIEU, ADRENVCONV, DATED, DATEF, DESCRIPTIF, NOM_STAGIAIRE, ID_STAGIAIRE")
values
("'Herve3', 'Montier', 'Montier', '0678513495', 'g-montier@carabosse.com', '12 rue du taf', '12 rue du taf', '111007', '121207', 'stage de stagiation', 'Bricka', INCREM.nextval");
Nan mais l'exemple que je t'ai donné est sépcifique à Oracle. Pour les autres SGDB c'est:
Citer
<?php
$db = new PDO('odbc:SAMPLE', 'db2inst1', 'ibmdb2');
$stmt = $db->prepare("insert into images (id, contenttype, imagedata) values (?, ?, ?)");
$id = get_new_id(); // fonction pour allouer un nouvel ID
// assumons que nous récupérons un fichier depuis un formulaire
// vous pouvez trouver plus de détails dans la documentation de PHP
Sinon vérifie que tes chemins d'appels sont corrects (que le nom des dossiers ne contiennent pas de caractère non ASCI) parce que j'ai eu ce problème avec Django, le framework Python. :/
oui et ?
SQL, pas php ni python ni rien d'autre.
Double-quotes = erreur sql.
Pas de chemins d'appel vu que je bosse en local sur ma base, dans un module de commandes sql.
Ben tu peux utiliser avec n'importe quel langage en fait, c'est juste une base de donnée auquel tu veux accéder avec ton programme. Que ce soit en C, en python ou en PHP.
Tous les logos et marques sont des Propriétés respectives.
Tout copie entiere ou partielle de ce site peuvent faire l'objet de poursuite judiciaire.
Les propos tenus sont de la responsabilité de leurs auteurs.