为什么这段代码不起作用?

col*_*ong -1 php image onerror

任何人都可以告诉我为什么这段代码不起作用?

<?php $err=1; ?>

<img src="334234234234234.gif" onError="<?php $err=0; ?>" />

<?php echo "<br />" . $err; ?>
Run Code Online (Sandbox Code Playgroud)

即使图像存在,仍然会执行错误.为什么?

Sam*_*son 11

HTML无法设置PHP变量.这些只能在服务器上设置.IMG标记的onError方法无法访问PHP变量.

页面生命周期:

  1. (SERVER)服务器构建您的页面(处理变量等)
  2. (服务器 - >客户端)服务器将页面发送到客户端计算机
  3. (客户端)加载html,运行javascript,并引发任何错误.

注意,您正在尝试将项目3与项目1组合在一起,这在语义上无法完成.

执行您尝试的操作的唯一方法是将javascript方法附加到该事件,并在运行onError方法时与服务器进行通信.但这可能比你习惯的要复杂一些.