簡體   English   中英

是否可以在不使用MySQL的情況下創建HTML頁面?

[英]Is it possible to create an HTML page without the use of MySQL?

到目前為止,我已經有了使用PHP的POST方法的HTML表單。 我想做的是使用包含樣式表和表單中未包含內容的輸入自動創建頁面。 我知道可以像這樣創建一個XML頁面,但是您可以創建HTML頁面嗎? 到目前為止,這就是我的工作,包括創建XML頁面,創建HTML頁面是否與創建XML頁面非常相似?

HTML形式:

<form action="insertpage.php" method="post" class="form">
        Noun<input name="form1" value="" type="text">
        Adjective<textarea name="form2"  cols="40" rows="4"></textarea>
            <input type="submit" value="Submit">
        </form>

PHP創建XML文件

$xml = new DOMDocument("1.0");
$root = $xml->createElement ('root');
$xml->appendChild($root);

$form1 = $xml->createElement ('form1');
$vtext = $xml->createTextNode($_POST[form1]);
$form1->appendChild($vtext);
$root->appendChild ($form1);


$form2 = $xml->createElement ('form2');
$advtext = $xml->createTextNode($_POST[form2]);
$form2->appendChild($advtext);
$root->appendChild ($form2);
$xml ->save("words/$_POST[form1].xml"))) or die ("error creating file");

這工作得很好,除非我找不到用用戶輸入自動創建HTML頁面的方法。 有沒有辦法用PHP做到這一點,因為那也是完美的。 順便說一句,我知道這種方法非常不安全,並且我正在努力創建一些驗證碼,例如驗證碼。 另外,如果您無法使用PHP執行此操作,是否還有其他編程語言可以執行此操作? 謝謝

這是一個非常簡單的想法,可以幫助您入門。

HTML模板:template.html(已大大減少)

<div>
    <p>[[name]]</p>
    <p>[[email]]</p>
</div>

HTML表單:

<form action="whatever.php" method="post">
    <input type="text" name="name" placeholder="name" />
    <input type="text" name="email" placeholder="email address" />
    <button>Create Page</button>
    <input type="hidden" name="create_page" value="true" />
</form>

PHP腳本:

<?php

if (isset($_POST['create_page']))
{
    $template = file_get_contents('template.html');
    $template_vars = array(
        'name' => $_POST['name'],
        'email' => $_POST['email']
    );
    foreach ($template_vars as $k => $v)
    {
        $template = str_replace("[[{$k}]]", $v, $template);
    }
    file_put_contents('newfilename.html', $template);
}

希望能有所幫助。

值得一提的是,這對惡意用戶輸入是開放的,您應該清除所有發布數據,這只是一個非常簡單的示例。

只需將<?php echo $_POST['form1'];... ?>標記與<input>一起使用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM