Pendant cette période de confinement, je me suis lancé à faire un extranet lié à un site Wordpress. Non pas que le développement sans wordpress me gène mais je bloque avec le CSS. Bref, là n'est pas le sujet. Je me suis lancé a créer un plugin. Celui-ci affiche des données test d'une base de données sans problème. J'ai un petit formulaire sous ces données pour y insérer un nouvel enregistrement dans la base et ça me met une erreur 500 Lorsque je vire mon bout de code "insert", cela marche donc...
mon plugin:
<?php
/*
Plugin Name: Divers
Plugin URI: ""
Description: Ce plugin sert à ajouter des éléments dans la base de données
Author: Olivier
Author URI: ""
*/
// Hook for adding admin menus
add_action('admin_menu', 'mt_add_pages1');
// action function for above hook
function mt_add_pages1() {
// Add a new top-level menu (ill-advised):
add_menu_page(__('Divers ajouts','menu-test'), __('Détail','menu-test'), 'client', 'Details_ajout', 'InterAjout', 'dashicons-admin-users', 4 );
// Add a submenu to the custom top-level menu:
add_submenu_page('Details_ajout', __('Ajout Ets','menu-test'), __('Création entreprise','menu-test'), 'client', 'sub-page', 'mt_sublevel_page1');
// Add a second submenu to the custom top-level menu:
add_submenu_page('Details_ajout', __('Ajout intervention','menu-test'), __('Création intervention','menu-test'), 'client', 'sub-page2', 'mt_sublevel_page21');
// Add a new top-level menu (ill-advised):
add_menu_page(__('Ajouts_Client','menu-test'), __('Contact','menu-test'), 'client', 'Ajout_Client', 'mt_toplevel_page1' );
// Add a submenu to the custom top-level menu:
add_submenu_page('Ajout_Client', __('Ajout Ets','menu-test'), __('Création entreprise','menu-test'), 'client', 'sub-page', 'mt_sublevel_page1');
// Add a second submenu to the custom top-level menu:
add_submenu_page('Ajout_Client', __('Ajout intervention','menu-test'), __('Création intervention','menu-test'), 'client', 'sub-page2', 'mt_sublevel_page21');
}
// mt_toplevel_page() displays the page content for the custom Test Toplevel menu
function InterAjout() {
global $wpdb;
$myrows = $wpdb->get_results( "SELECT * FROM mod361_TypeInter" );
foreach ( $myrows as $myrow )
{
echo $myrow->Description;
}
$myrows = null;
//echo $myrows->Description;
?>
<div class="col-md-12 col-sm-12 col-xs-12">
<div class="x_panel">
<div class="x_title">
</div>
<div class="x_content">
<table id="datatable" border='1' class="table table-striped table-bordered">
<thead>
<tr>
<th>Numéro Auto</th>
<th>Abréviation</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><?php echo $myrow->NumAuto; ?></td>
<td><?php echo $myrow->Abreviation; ?></td>
<td><?php echo $myrow->Description; ?></td>
</tr>
<?php
$myrows = null;
?>
</tbody>
</table>
</div>
</div>
</div>
<hr>
<div class="x_content">
<br />
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="first-name">Abréviation <span class="required">*</span>
</label>
<div class="col-md-6 col-sm-6 col-xs-12">
<input type="text" id="Abre" name="Abre" required="required" class="form-control col-md-7 col-xs-12">
</div>
</div>
<div class="form-group">
<label class="control-label col-md-3 col-sm-3 col-xs-12" for="first-name">Description <span class="required">*</span>
</label>
<div class="col-md-6 col-sm-6 col-xs-12">
<input type="text" id="Description" name="Description" required="required" class="form-control col-md-7 col-xs-12">
</div>
</div>
<div class="ln_solid"></div>
<div class="form-group">
<div class="col-md-6 col-sm-6 col-xs-12 col-md-offset-3">
<button class="btn btn-primary" type="button" onclick="document.location.href='index.php'">Retour</button>
<button class="btn btn-primary" type="reset" onclick="efface()">Effacer</button>
<button type="submit" class="btn btn-success" onclick="envoyer2()">Valider</button>
</div>
</div>
</div>
<?php
}
// mt_sublevel_page() displays the page content for the first submenu
// of the custom Test Toplevel menu
function mt_sublevel_page1() {
echo "<h2>" . __( 'Test Sublevel', 'menu-test' ) . "</h2>";
}
// mt_sublevel_page2() displays the page content for the second submenu
// of the custom Test Toplevel menu
function mt_sublevel_page21() {
echo "<h2>" . __( 'Test Sublevel2', 'menu-test' ) . "</h2>";
}
?>
<script>
function efface(){
getElementById('Abre').value="";
getElementById('Description').value="";
}
function getXMLHttpRequest()
{
var xhr = null;
if (window.XMLHttpRequest || window.ActiveXObject)
{
if (window.ActiveXObject){
try
{
xhr = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else
{
xhr = new XMLHttpRequest();
}
}
else
{
alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
return null;
}
return xhr;
}
function envoyer2(){
var xhr = getXMLHttpRequest();
var valeurb0 = "ajout";
var valeurb1 = document.getElementById("Abre").value;
var valeurb2 = document.getElementById("Description").value;
alert(valeurb0 + valeurb1 + valeurb2);
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) {
var val = xhr.responseText;
alert('après passage par ajax, le résultat est : '+val);
}
};
xhr.open("POST", "../wp-content/plugins/Divers/fonctions/Salarie.php", true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.send("Etape="+valeurb0+"&Abreviation="+valeurb1+"&Description="+valeurb2);
}
</script>
J'y ai laissé mes derniers tests donc si vous avez une idée... Merci d'avance pour votre aide.
Olivier
Problème Insert Wordpress
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.