Maison >développement back-end >tutoriel php >Solution à l'invite php index non défini

Solution à l'invite php index non défini

一个新手
一个新手original
2017-09-12 10:51:212164parcourir

Habituellement lors de l'utilisation de $_post[''], $_get[''] pour obtenir des paramètres dans le formulaire, Avis : Index non défini : ---------;

Nous recevons souvent des erreurs d'index non défini lors de la réception de données POST à ​​partir de formulaires, comme suit :

$act=$_POST['action'];

L'utilisation du code ci-dessus invite toujours
Avis : index non défini : agissez dans D:testpost.php à la ligne 20
De plus, parfois
Avis : Variable non définie : Soumettre... et d'autres invites similaires apparaissent

Les invites ci-dessus sont des invites PHP au lieu de signaler une erreur , PHP lui-même peut être utilisé directement sans déclarer de variables à l'avance, mais il y aura une invite pour les variables non déclarées. Généralement, en tant que site Web formel, les invites seront désactivées, et même les messages d'erreur seront désactivés.

Solution :

Méthode 1 : Modification de la configuration du serveur
Modifier le mode d'affichage des erreurs sous la configuration des erreurs dans php.ini :

将error_reporting = E_ALL 修改为 
error_reporting = E_ALL & ~E_NOTICE

Redémarrez le serveur APCHE après modification pour prendre effet.

Méthode 2 : Initialiser les variables.

Méthode 3 : Porter un jugement

isset($_post['']),empty($_post['']) if --else


Méthode 4 : Ajouter @ avant que le code de notification n'apparaisse, @ signifie qu'il y a une erreur dans cette ligne ou un avertissement à ne pas être sortie, @$username =$_post['username'];
Ajoutez un @ devant la variable, par exemple if (@$_GET['action']=='save') { ...

Méthode 5 : La dernière est très pratique. C'est une fonction écrite par quelqu'un d'autre, et la valeur est transmise via cette fonction.

Définir une fonction :

Le code est le suivant :

function _get($str){ 
$val = !empty($_GET[$str]) ? $_GET[$str] : null; 
return $val; 
}

Puis lors de son utilisation, utiliser directement _get('str') au lieu de $ _GET[ 'str'] C'est tout~

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn