【发布时间】:2017-08-13 19:38:27
【问题描述】:
全部,
我已经按照下面的链接让 PHP 在我的 MacBook Pro (OS 10.12.6) 上运行。当我使用时,我什至会出现 phpinfo http://localhost/~USERNAME/phpinfo.php。 ~USERNAME 替换为我的真实用户名。
但是,当我在 WebStorm (2016.3.1) 中创建一个新项目并使用下面的 HTML 和 PHP 代码时......我遇到了问题。我的目标是有一个上传输入按钮,以便用户可以将图像上传到我的 localhost 暂存文件夹中。但是,当在 WebStorm 中运行我的 index.html 时,upload.php 文件会下载到我的下载文件夹中。而且我在输入元素中选择的文件永远不会进入暂存文件夹。
仅供参考,我已修改本地 php.ini 以包含以下条目。然后我重新启动了 apache2(通过 sudo apachectl restart)。
你们会碰巧知道我做错了什么吗?感谢您的帮助。
在 MAC 上设置 PHP 的链接
https://ole.michelsen.dk/blog/setup-local-web-server-apache-php- osx-yosemite.html
HTML
<form action="upload.php" method="post" enctype="multipart/form-data">
Select image to upload:
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="Upload Image" name="submit">
</form>
PHP
<?php
$uploaddir = 'staging/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile);
?>
PHP.INI
file_uploads = on
post_max_size = 40M
upload_max_filesize = 40M
post_max_size = 40M
max_execution_time : 6000
max_input_time : 6000
memory_limit : 128M
【问题讨论】:
-
您可能关闭了 PHP 的错误报告。即便如此,如果您查看 Apache 的错误日志(下一次!),您可能会找到 @RiggsFolly 给您的答案:)
-
您对查看日志有什么建议吗?我查看了 /var/log/apache2 并重命名了 error_log 和 access_log。但是,在我尝试运行我的网站后,并没有创建新的 error_log 文件。
-
将这两行添加到项目调用的第一个 PHP 文件(index.php 等)中。它不必出现在每个文件中,只需在执行其余代码之前调用一次即可:
ini_set('display_errors',1); error_reporting(E_ALL);只会将错误显示在屏幕上,这对您的目的来说更容易。
标签: javascript php html apache webstorm