Notice: Undefined index: authcode in E:\xampp\htdocs\project\form.php on line 5 输入错误

 看评论区说没加session_start();但是在php文件中加了session_start()还是出现错误


<?php

 

   session_start();


//1.创建画布

   $image = imagecreatetruecolor(100, 30);//创建一个高100宽30的画布(默认背景是黑色)

   $bgcolor = imagecolorallocate($image, 255, 255, 255);//#fff  imagecolorallocate为图像分配颜色

   imagefill($image, 0, 0, $bgcolor);//区域填充

 


   // 2.实现数字加字母验证码(二)

   $captch_code = '';

   for($i=0;$i<4;$i++){

     $fontsize = 6;

     $fontcolor = imagecolorallocate($image, rand(0,120), rand(0,120), rand(0,120));


     $data = '123456789';

     $fontcontent = substr($data, rand(0,strlen($data)-1),1);

     $captch_code.=$fontcontent;


     $x = ($i*100/4) + rand(5,10);

     $y = rand(5,10);


     imagestring($image, $fontsize, $x, $y, $fontcontent, $fontcolor);

   }

   $_SEESSION['authcode']=$captch_code;

//3.增加干扰元素


   //增加点干扰

   for ($i=0; $i < 200; $i++) { 

     $pointcolor = imagecolorallocate($image, rand(50,200), rand(50,200), rand(50,200));

     imagesetpixel($image, rand(1,99), rand(1,29), $pointcolor);

   }


   //增加线干扰

   for ($i=0; $i < 3; $i++) { 

     $linecolor = imagecolorallocate($image, rand(80,220), rand(80,220), rand(80,220));

     imageline($image, rand(1,99), rand(1,29), rand(1,99), rand(1,29), $linecolor);

   }




   header('content-type:image/png');//向浏览器输出图片头信息

   imagepng($image);//输出图片到浏览器


   //end

   imagedestroy($image);//销毁图片


慕粉1939118473
浏览 1878回答 2
2回答

我是新手_请多指教

首先,这个不是错误,是一个警告。所以如果服务器不能改,每个变量使用前应当先定义。方法1:服务器配置修改修改php.ini配置文件,error_reporting = E_ALL & ~E_NOTICE方法2:对变量进行初始化,规范书写(比较烦琐,因为有大量的变量)。但还没有找到好定义方法,望大家指教方法3:每个文件头部加上:error_reporting(0); 如果不行,只有打开php.ini,找到display_errors,设置为display_errors = Off。以后任何错误都不会提示。方法4 :isset做判断

北漂外乡人

authcode 这个变量没有被定义,或者定义的时候,由于某些原因造成未能初始化,你可以检查一下你的代码,看看是什么情况, 还有一种更稳妥的方法就是使用 isset 去检测该变量的定义和初始化状态; 希望对你有所帮助
打开App,查看更多内容
随时随地看视频慕课网APP