33,6 → 33,7 |
$this->utilisateur_id = $courriel; |
$ordre = $this->getMaxOrdre($courriel); |
if (!is_null($ordre)) { |
$requeteDonnees = $this->supprimerSlashesProfond($requeteDonnees); |
|
// Triage et manipulation des données |
$observations = array(); |
75,6 → 76,7 |
$imgAAjouter['id_obs'] = $idObs; |
$imgAAjouter['nom'] = $obs['image_nom']; |
$imgAAjouter['b64'] = $obs['image_b64']; |
$this->debug[] = 'Contient B64 : '.(empty($obs['image_b64']) ? 'non' : 'oui'); |
} |
|
$observations[$idObs] = array( |
95,11 → 97,13 |
if ($img != null) { |
$this->nettoyerImagesUploades(); |
$nomFichierImg = $this->traiterNomFichierImage($img['nom']); |
$cheminImage = $this->config['cel_db']['chemin_stockage_temp']."/$nomFichierImg"; |
// Si l'image est transmise en base 64 |
if (empty($img['b64']) === false) { |
$this->transformerBase64enFichier($nomFichierImg, $img['b64']); |
$this->transformerBase64enFichier($cheminImage, $img['b64']); |
} |
$cheminImage = $this->config['cel_db']['chemin_stockage_temp']."/$nomFichierImg"; |
|
$this->debug[] = 'Nom fichier img debut :'.$nomFichierImg; |
$idImg = $this->ajouterImageSurDdEtBdd($img['id_utilisateur'], $cheminImage, $nomFichierImg); |
if ($idImg !== false) { |
$this->lierObsEtImg($idImg, $img['id_utilisateur'], $img['id_obs']); |
145,6 → 149,12 |
$this->envoyerJson($retour); |
} |
|
private function supprimerSlashesProfond($valeur) { |
$valeur = is_array($valeur) ? array_map(array($this, 'supprimerSlashesProfond'), $valeur) : stripslashes($valeur); |
return $valeur; |
} |
|
|
private function getMaxOrdre($identifiant) { |
$ordre = null; |
$identifiant = $this->bdd->quote($identifiant); |
195,14 → 205,12 |
* Décode l'image en base64,enregistre celle-ci sous forme de fichier du type de l'image |
* dans un dossier temporaire. |
*/ |
private function transformerBase64enFichier($fichierNom, $imageInfosB64) { |
private function transformerBase64enFichier($cheminImage, $imageInfosB64) { |
// Enleve la partie data:image qui permet la previsalisation pour firefox de l'image en base64 |
$imageBase64 = explode(';', $imageInfosB64); |
$type = explode('/',$imageBase64[0]); |
$dataBase64 = explode(',',$imageBase64[1]); |
$dataImg = base64_decode($dataBase64[1]); |
|
$cheminImage = $this->config['cel_db']['chemin_stockage_temp'].'/'.$fichierNom.'.'.$type[1]; |
$imageRessource = fopen($cheminImage, 'wb'); |
fwrite($imageRessource, $dataImg); |
fclose($imageRessource); |
270,7 → 278,7 |
$infosImage['ci_nom_original'] = $nomFichierImage; |
$infosImage['ci_ce_utilisateur'] = $idUtilisateur; |
$infosImage['ci_md5'] = md5_file($cheminImage); |
|
$this->debug[] = 'Nom fichier img meta :'.$nomFichierImage; |
$requete = $this->construireRequeteInsertionImage($infosImage); |
$resultat = $this->executerRequeteSimple($requete); |
if ($resultat !== false) { |
315,7 → 323,7 |
"WHERE ci_ce_utilisateur = $id_utilisateur "; |
$resultat = $this->executerRequete($requete); |
|
$ordre = ($resultat) ? $resultat[0]['max_ordre']++ : 0; |
$ordre = ($resultat) ? ++$resultat[0]['max_ordre'] : 0; |
return $ordre; |
} |
|