Vous n'êtes pas identifié(e).
Bonjour
Nouveau site avec des dizaines de Codes Sources :
Snippets ANTI HACK - REWRITE - REDIRECTION
A bientot
Tu met 2 codes sans dire :
- d'ou vienne ces codes
- quel sont les erreurs que te retourne le script quand tu le lance, on aurait les Numéros de lignes ou sont les erreurs, tu penses pas que cela pourrait nous aider ?
Tu dois enregistré les fichiers en .php
Tu peux avoir plusieurs fichiers comme 1 seul contenant tout ton code, pas de restriction de ce coté.
Il est préférable de séparer le code en plusieurs fichiers pour plus de clarté.
With JavaScript
Tu n'es pas au bon endroit, c'est le code d'un plugin WordPress
Le mieux est que tu ailles sur le forum de WP : https://wpfr.net/support/
le message d'erreur ne s'affiche pas
La je ne te suis pas du tout, tu n'as pas répondu a mes précédentes questions. La requête fonctionne t-elle ?
Hormis le warning, la requête fonctionne t-elle ? mysqli_errno ne fonctionne pas avec toutes les connexions mysqli, as-tu vérifier d'avoir la bonne dans ta fonction connection_BD ?
Pas simple car tu ne nous indiques pas les lignes d'erreur
A mon avis l'erreur vient de MYSQL_ASSOC qui n'a rien a faire la, obsolète
remplace
$res_infos = mysql_fetch_array($res_infos,MYSQL_ASSOC);
par
$res_infos = mysql_fetch_array($res_infos);
$salaire est un objet donc si tu fais un echo dessus ca fait meuhhh
Solution :
$donnee_salaire = $salaire->fetch() ;
echo $donnee_salaire['Profit'];
Parse correctement tes variables :
"dim=".$dim." WHERE id='".$id."' ";
ensuite regarde si tu récupères toutes tes valeurs de la global POST
print_r($_POST); // affiche le tableau POST
die(); // stop le script
aussi
tu renvoies pas l'id dans ton script, faut mettre un echo
<input type="hidden" name="postId" value="<?php echo $id;?>">
et que contient votre fichier connexion.php ?
Je reviens au sujet, un développeur explique les problèmes d'injection, ca vient de la League des Packages
https://eilgin.github.io/php-the-right- … _extension
http://wiki.hashphp.org/Validation
Bonjour,
Je t'ai refais le code vite fait, si tu as des questions hésites pas.
$nom = $_POST['Nom'];
$prenom = $_POST['Prenom'];
$cnib = $_POST['CNIB'];
$tel1 = $_POST['TEL1'];
$tel2 = $_POST['TEL2'];
$requete = "INSERT INTO `formulaire` (`id`,
`nom`,
`prenom`,
`cnib`,
`tel1`,
`tel2`)
VALUES(NULL,
'$nom',
'$prenom',
'$cnib',
'$tel1',
'$tel2');";
$resultat= $bdd-> exec($requete);
if($resultat==1) echo'les information ont bien été enregistrer';
else echo ' ohlala ...problème';
?>
Regardez le sujet précédent que j'avais lancé en... 2009
Je déconseillais FluxBB et ses mises a jour tous les 3 ans a l’instar de phpBB qui est mise a jour plusieurs fois par an
et bien entendu sur phpBB il a les états des topics
avant fluxBB le forum de phpdebutant montait jusqu’à 100 nouveaux topics par jour...
tout le monde s'est barré a l’époque sur le siteduzero qui est devenu openclassroom maintenant
sur phpdbutant, ya plus personne, c'est d'autant plus dommage qu'il reste premier sur la requete "php debutant" de gg
++
L’extension mysql a été considéré comme obsolète en... 2013 lors de la sortie de php 5.5.0
et elle est encore fortement utilisé en production vu que la dernière version php 5.6 doit etre encore maintenue normalement pendant encore 4 ans
Je pense qu'on a de belles années devant nous avant que mysqli devienne obsolète a son tour et pose problème en production.
Bonjour Mathieu,
Je soutiens a fond ton projet :
https://phpsources.net/script/php/cms/7 … 0-alpha4.1
Je vais t'ajouter dès demain a mon crawler, (il va regarder sur ta Home plusieurs fois par jour si tu as une nouvelle version)
Le crawler m'envoie un sms si ya changement, en générale je up les nouvelles versions dans la journée.
Je te cache pas que si tu joint une "note" qui détail brièvement les changements, a chacune de tes nouvelles versions, ca sera un plus.
Excellente continuation
A très bientot
Ton code n'a pas d'erreur d'écriture.
Regarde ce lien, c'est la connexion avec gestion des erreurs de connexion de la classe PDO:
https://www.php.net/manual/fr/pdo.connections.php
De mon coté j'utilise directement la classe mysqli, je la trouve plus simple.
$db_server = 'localhost';
$db_user_login = 'username';
$db_user_pass = 'motdepasse';
$db_name = 'dbname';
$bdd = new mysqli($db_server, $db_user_login, $db_user_pass, $db_name);
if ($bdd->connect_error) {
echo 'Erreur de connexion (' . $bdd->connect_errno . ') ' . $bdd->connect_error;
}
?>
C'est le modulo, n'y touche pas
Tu as 3 valeurs a modifier
Éventuellement ta requete : $req = "SELECT * FROM tech WHERE niveau=1 ORDER BY id_tech DESC";
Le nombre de colonne de ta table:
$nbcol = 5;
Le nom de tes champs (donc 5 fois si tu as 5 colonnes)
$valeur1=$tablo[$i]['champ1'];
$valeur1=$tablo[$i]['champ2'];
$valeur1=$tablo[$i]['champ3'];
$valeur1=$tablo[$i]['champ4'];
$valeur1=$tablo[$i]['champ5'];
Et le nombre de ligne va dépendre du nombre d'enregistrements.
Ce code passe les éléments de la requête dans un tableau et affiche le tableau :
$req = "SELECT * FROM tech WHERE niveau=1 ORDER BY id_tech DESC";
//--- Résultat ---//
$res = mysql_query($req);
//met les données dans un tableau
while($data = mysql_fetch_assoc($res))
{
$tablo[]=$data;
}
//détermine le nombre de colonnes
$nbcol = 5;
echo '<table>';
$nb=count($tablo);
for($i=0;$i<$nb;$i++){
//les valeurs à afficher
$valeur1=$tablo[$i]['champ1'];
$valeur2=$tablo[$i]['champ2'];
if($i%$nbcol==0)
echo '<tr>';
echo '<td>',$valeur1,'<br/>',$valeur2,'</td>';
if($i%$nbcol==($nbcol-1))
echo '</tr>';
}
echo '</table>';
?>
Bonjour,
Il vous suffit simplement de remplacer le nom de la fonction et d'ajouter les délimiteurs (#) sur le masque :
$domaine = 'phpsources.net';
if ( preg_match("#^(www\.)?[a-z0-9]{1,1}[._a-z0-9-]*[a-z0-9]{1,1}\.[a-z]{2,4}$#",$domaine) )
echo 'domaine valide';
else
echo 'domaine invalide';
?>
Affichera : domaine valide
... affirmer de tels choses est pour moi irresponsable vis-à-vis des lecteurs de ce forum.
Et voila !! un de plus .... A quel moment j'affirme que mysql_real_escapte_string va résoudre les problèmes de hack ? Merci de ne pas me prêter de tel affirmations. Cdlt
@Jc
Prends pas la mouche stp, d'autant plus que 99% de la solution se trouve bien dans la réponse que tu donnes:
"C'est à vous donc de faire attention à votre façon de gérer les variables et aux requêtes utilisées passées en base de données notamment pour les éviter. "
Mais de la a dire que mysql_real_escape_string est inutile contre le hack, ce n'est pas un avis partagé.
Pour compléter j'ajoute :
- avoir ses logiciels a jour (apache, nginx, mysql...)
- utilisation de la géolocalisation pour bannir des pays (Russie et Asie, particulièrement la Chine qui est très virulentes ses derniers temps)
- script anti hack : + de 10 connections par minute -> IP backlisté
- utilisation du HTTPS
real_escape_string ou autre fonction du genre ne va pas vous protéger des injections SQL qu'on se le dise.
mysql_real_escape_string() to escape special characters in a string before sending a query to MySQL. This function was adopted by many to escape single quotes in strings and by the same occasion prevent SQL injection attacks.
Le tuto pour Changer la version de PHP chez OVH mais tu ne devrais pas en avoir besoin car :
Arfooo est disponible en php 7 => Script Arfooo Annuaire en PHP 7 - Les templates sont eux payants.
sql7.60gp est visiblement l'adresse de ton serveur SQL, chez OVH les mutualisés sont livrés sans la base de donnée, c'est a toi de la créer :
Créer une base de données chez OVH
Une fois ta base de donnée créé, tu auras en main :
- l'adresse du serveur sql
- nom de bdd
- login de ta bdd (nom et login sont les mêmes)
- mot de passe
Donc pendant l’installation de Arfooo, remplie respectivement les champs par tes nouvelles datas de connections BDD.
Ça c'est du déterrage de sujet !!
Heureux de savoir que fluxBB te convient, ça étant les maj de fluxBB c'est tous les 3 ans... et encore, niveau sécurité il y a mieux je pense.
fluxBB tourne en PHP 7 ?