首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用PHP实现jQtouch/Contao上传

用PHP实现jQtouch/Contao上传
EN

Stack Overflow用户
提问于 2015-01-20 10:50:30
回答 2查看 273关注 0票数 1

我试图用表单将图片上传到我的can服务器,但是$_FILES' file‘文件找不到我的文件。

它只为手机设计,我正在使用康陶尔作为CMS。如果我使用的是一个新的页面,而不是由康陶尔或jQtouch生成的,我就可以上传服务器上的文件。下面的代码是在我的CMS中实现的。我认为jQuery或Ajax存在问题。有什么办法可以让它起作用吗?

HTML:

代码语言:javascript
复制
<form action="/send_mail_php.php" method="post" enctype="multipart/form-data">
    <ul class="edit rounded">
        <li class="arrow">
            <select id="Anrede">
                    <option value="Frau">Frau</option>
                    <option value="Herr">Herr</option>
            </select>
        </li>
        <li>
            <input type="text" name="Firma" placeholder="Firma*" id="firma" data-emoji_font="true" style="font-family: 'Avenir Next', Avenir, 'Segoe UI Emoji', 'Segoe UI Symbol', Symbola, EmojiSymbols !important;">
        </li>
        <li>
            <input type="text" name="Abteilung" placeholder="Abteilung*" id="abteilung" data-emoji_font="true" style="font-family: 'Avenir Next', Avenir, 'Segoe UI Emoji', 'Segoe UI Symbol', Symbola, EmojiSymbols !important;"/>
        </li>
        <li>
            <input type="text" name="Vorname" placeholder="Vorname*" id="vorname" data-emoji_font="true" style="font-family: 'Avenir Next', Avenir, 'Segoe UI Emoji', 'Segoe UI Symbol', Symbola, EmojiSymbols !important;"/>
            </li>
        <li>
            <input type="text" name="Nachname" placeholder="Nachname*" id="nachname" data-emoji_font="true" style="font-family: 'Avenir Next', Avenir, 'Segoe UI Emoji', 'Segoe UI Symbol', Symbola, EmojiSymbols !important;">
        </li>
        <li>
            <input type="tel" name="Telefon" placeholder="Telefon*" id="telefon">
        </li>

        <li>
            <input type="email" name="Email" placeholder="E-Mail-Adresse*" id="email">
        </li>
        <li>
            <input type="text" name="Ort" placeholder="Wo ist der Schaden?*" id="ort" data-emoji_font="true" style="font-family: 'Avenir Next', Avenir, 'Segoe UI Emoji', 'Segoe UI Symbol', Symbola, EmojiSymbols !important;">
        </li>
        <li>
            <input type="file" name="fileToUpload" id="fileToUpload">
        <li>
            <textarea  name="Schadensbericht" placeholder="Schadensbericht*" id="bericht" data-emoji_font="true" style="font-family: 'Avenir Next', Avenir, 'Segoe UI Emoji', 'Segoe UI Symbol', Symbola, EmojiSymbols !important;"></textarea>
            </li>
        <li>
            Kopie an mich
            <input name="checkbox" id="checkbox" type="checkbox" class="toggle">
        </li>
        <li>
            <a name="submit" value="Upload" type="submit" style="margin-top: 10px; margin-bottom: 10px;" href="#" class="submit whiteButton">Senden</a>
        </li>
    </ul>
</form>

PHP:

代码语言:javascript
复制
if(isset($_POST['fileToUpload'])){
    $src = $_FILES['fileToUpload']['tmp_name'];
    $dst = $target_path;

    if (!file_exists($src))
       echo ("<br>File wasn't found<br> SRC = ".$_REQUEST['file']);

    if (!is_readable($src))

       echo ("<br>File is uploaded but not readable");

    if (!is_writeable($destination_path))

       echo ("<br>Check your permission for the destination directory");

    @touch($dst);
    if (!file_exists($dst))
       echo ("<br>Error (?)");


        if (@move_uploaded_file($_FILES['fileToUpload']['tmp_name'], "images/".$_FILES['fileToUpload']["name"])) {

        $checkUpload = 'true';

        }
        else {  

        $checkUpload = 'false'; 

    }
}
else {
    echo ("<br>Error: Not working");
}

几周前我刚开始编程,我对web开发非常陌生,所以如果您发布完成的代码,如何修复它或详细的说明,这将对我有所帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-20 10:58:15

1)代码中的if(isset($_POST['file'])){PHP中,在控件的HTML名称中是filetoUpload <input type="file" name="fileToUpload" id="fileToUpload">

匹配名字,你就可以通过了。2) <li><a name="submit" value="Upload" type="submit" style="margin-top: 10px; margin-bottom: 10px;" href="#" class="submit whiteButton">Senden</a> (如果我没记错,<a>标记是从不类型的submit,它总是input type="submit",或者如果您想提交表单,从代码中删除 type="submit",然后使用下面的代码

代码语言:javascript
复制
<li><a name="submit" value="Upload" onclick="document.forms[0].submit();" style="margin-top: 10px; margin-bottom: 10px;" href="#" class="submit whiteButton">Senden</a>
票数 0
EN

Stack Overflow用户

发布于 2015-02-10 10:11:27

所以我不了解你,但是从编程开始,然后用一个框架开始.不是最理想的。

上传一个文件(正常)不是一个“ajax-问题”。如果您不遵守规则,则有一些代码禁止ajax请求。论坛

为什么你不直接用一个分机来做连接呢?比如这一个这一个或者这一个

或者自己写,如果你想的话。教程(德语)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28043460

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档