PluXml.org

Blog ou CMS à l'Xml

Vous n'êtes pas identifié(e).

#1 04/02/2017 15:11:04

je-evrard
Pluxml Staff
Lieu : pau
Inscription : 08/05/2012
Messages : 1 128
Site Web

Enregistrement du content d'un article en ajax

Bonjour,

Dans le cadre d'un projet j'ai besoin d'enregistrer en ajax le contenu des pages statique et des articles :

Pour les pages statiques c'est relativement simple :

[== Indéfini ==]
<?php
require( 'ajax.php' );

$page_id = (isset($_GET['page_id'])) ? $_GET['page_id'] : '';
$page_type = (isset($_GET['page_type'])) ? $_GET['page_type'] : '';
# post var widget jquery
$input = file_get_contents("php://input");
parse_str($input, $post_var);

/* static */

$filename = PLX_ROOT.$plxAdmin->aConf['racine_statiques'].$page_id.'.'.$plxAdmin->aStats[ $page_id ]['url'].'.php';

$post_var["content"] = visualwizard_utils_unSlash($post_var["content"]);

//echo ($filename);
# On écrit le fichier

if(plxUtils::write($post_var["content"],$filename))
	echo true;
else
echo false ;

?>

Mais pour les articles c'est une autre histoire à cause de la complexité de la structure interne de l'article.
Sachant que je ne veux que :

  • ouvrir l'xml de l'article (j'ai son id)

  • remplacer le contenu de la balise content uniquement (simplexml ?)

  • et enregistrer l'article sans toucher au reste de la structure

Si vous avez une solution simple....

Merci d'avance,

jeje

Dernière modification par je-evrard (04/02/2017 15:11:50)


Petit à petit l'oiseau fait son nid.
- Sites : Création web - Création artistique
- pluxml : Plugins - Simplebox - Visual Wizard
- Projet SPX : Vitrine - Blog
facebook

Hors ligne

#2 05/02/2017 19:28:03

je-evrard
Pluxml Staff
Lieu : pau
Inscription : 08/05/2012
Messages : 1 128
Site Web

Re : Enregistrement du content d'un article en ajax

Voila ma solution :

[== Indéfini ==]
<?php

// http://coffeerings.posterous.com/php-simplexml-and-cdata
class SimpleXMLExtended extends SimpleXMLElement {
	public function addCData($cdata_text) {
		$node = dom_import_simplexml($this); 
		$no   = $node->ownerDocument; 
		$node->appendChild($no->createCDATASection($cdata_text)); 
	}
  
}

require( 'ajax.php' );

$page_id = (isset($_GET['page_id'])) ? $_GET['page_id'] : '';
if(($aFile = $plxMotor->plxGlob_arts->query('/^'.$page_id.'.(.+).xml$/')) == false) { # Article inexistant
	return false;
}

$filename = PLX_ROOT.$plxMotor->aConf['racine_articles'].$aFile['0'];
$articlexml = new SimpleXMLExtended(file_get_contents($filename));
$articlexml->content = NULL; // VERY IMPORTANT! We need a node where to append
$articlexml->content->addCData('Site Title');
$xml = $articlexml->asXML();

# On écrit le fichier
if(plxUtils::write($xml,$filename))
	echo true;
else
echo false ;

?>

Dernière modification par je-evrard (05/02/2017 19:29:41)


Petit à petit l'oiseau fait son nid.
- Sites : Création web - Création artistique
- pluxml : Plugins - Simplebox - Visual Wizard
- Projet SPX : Vitrine - Blog
facebook

Hors ligne

#3 06/02/2017 15:45:58

cfdev
Membre
Lieu : Provence
Inscription : 22/07/2011
Messages : 273
Site Web

Re : Enregistrement du content d'un article en ajax

Trop puissant!


Vous voulez créer votre plugin pour pluXml? -> spxdatas est fait pour vous !
mcercle - Logiciel de gestion devis/factures/stock !

Hors ligne

#4 06/02/2017 17:32:02

je-evrard
Pluxml Staff
Lieu : pau
Inscription : 08/05/2012
Messages : 1 128
Site Web

Re : Enregistrement du content d'un article en ajax

cdev a écrit :

Trop puissant!

C'est trop vraiment smile .

N'étant qu'un codeur moyenne gamme. Si quelqu'un a mieux... je suis preneur héhé.

Dernière modification par je-evrard (06/02/2017 17:37:46)


Petit à petit l'oiseau fait son nid.
- Sites : Création web - Création artistique
- pluxml : Plugins - Simplebox - Visual Wizard
- Projet SPX : Vitrine - Blog
facebook

Hors ligne

Pied de page des forums

A propos Nous soutenir Contact Twitter Google+
Copyright © 2006-2017 PluXml.org, tous droits réservés