Хорошо, до сих пор у меня была какая-то помощь от вас, ребята, и это последнее, что я потратил слишком много времени.Пропустить javascript в файл .txt с PHP
Я использую nopCart для интернет-магазина для uni. Мы не обязаны делать записи, но я сохраняю детали клиента в текстовом файле. Вначале мне удалось получить все, отправленное по электронной почте, но, поскольку я просматриваю PHP, я не знаю, как получить детали заказа. Информация о клиенте вводится в текстовые поля, а затем сохраняется в текстовом файле через PHP.
Мой фотографии код
<form action="process.php" method ="post">
<script type="text/javascript">
CheckoutCart();
</script>
<br /><br />
First Name: <input type="text" name="first" /><br />
Last Name: <input type="text" name="last" /><br />
Street Address: <input type="text" name="address" /><br />
Suburb: <input type="text" name="suburb" /><br />
State: <input type="text" name="state" /><br />
Postcode: <input type="text" name="postcode" /><br />
Country: <input type="text" name="country" /><br />
Phone Number: <input type="text" name="phone" /><br />
Email: <input type="text" name="email" /><br />
shop: <input type="text" name="shop" /><br />
<br /><br />
Other form data can go here when you create your prototype cart ...
<br /><br />
<input type="submit" name="submitButton" value=" Submit Order " />
</form>
Входной магазин не используется в настоящее время, когда я пытаюсь получить информацию о заказе в
Мой код process.php
<?php
// We will put the data into a file in the current directory called "data.txt"
// But first of all, we need to check if the user actually pushed submit
if (isset($_POST['submitButton'])) {
// The user clicked submit
// Put the contents of the text into the file
file_put_contents('./data.txt', $_POST['shop'] . " " .$_POST['first'] . " " . $_POST['last'] . "\n" . $_POST['address'] . "\n" . $_POST['suburb'] . " " . $_POST['state'] . " " . $_POST['postcode'] . "\n" . $_POST['country'] . "\n" . "\n", FILE_APPEND);
// ./data.txt: the text file in which the data will be stored
// $_POST['myInputName']: What the user put in the form field named "myInputName"
// FILE_APPEND: This tells the function to append to the file and not to overwrite it.
}
?>
В более раннюю версию, используя этот код в checkout.html. Это по электронной почте мне все, что нужно
<!-- Checkout Begin-->
The items listed below are currently in your shopping cart:
<form action="mailto:[email protected]" method ="post">
<script type="text/javascript">
CheckoutCart();
</script>
<br /><br />
Name: <input type="text" name="b_first" />
<input type="text" name="b_last" /><br />
Email: <input type="text" name="b_email" /><br />
<br /><br />
Other form data can go here when you create your prototype cart ...
<br /><br />
<input type="submit" value=" Submit Order " />
</form>
<!-- Checkout End -->
При нажатии на кнопку посыла я хотел бы получить этот текст открытия в новой электронной почте
ID_1 = ID + 000 & QUANTITY_1 = 1 & PRICE_1 = 28,99 & ИМЯ_1 = Cat + Scratcher & SHIPPING_1 = 4.99 & ADDTLINFO_1 = & ИТОГО = 2428,99% & ГРУЗА =% 244,99 & НАЛОГ =% 240.00 & ВСЕГО = 2433,98% & b_first = & Джонни b_last = Смит & b_email = a% 40a.com
Я хочу, чтобы иметь возможность получить эту строку здесь в .txt-файле с информацией о клиенте. Есть ли простой способ получить эту информацию из CheckoutCart() и сохранить ее в текстовом поле, чтобы затем добавить ее в файл process.php и получить ее в текстовом файле?
До сих пор я только что методом проб и ошибок, и я действительно не знаю, что делать дальше
Здесь функция checkoutCart из nopcart.js
//---------------------------------------------------------------------||
// FUNCTION: CheckoutCart ||
// PARAMETERS: Null ||
// RETURNS: Product Table Written to Document ||
// PURPOSE: Draws current cart product table on HTML page for ||
// checkout. ||
//---------------------------------------------------------------------||
function CheckoutCart() {
var iNumberOrdered = 0; //Number of products ordered
var fTotal = 0; //Total cost of order
var fTax = 0; //Tax amount
var fShipping = 0; //Shipping amount
var strTotal = ""; //Total cost formatted as money
var strTax = ""; //Total tax formatted as money
var strShipping = ""; //Total shipping formatted as money
var strOutput = ""; //String to be written to page
var bDisplay = true; //Whether to write string to the page (here for programmers)
var strPP = ""; //Payment Processor Description Field
iNumberOrdered = GetCookie("NumberOrdered");
if (iNumberOrdered == null)
iNumberOrdered = 0;
if (TaxByRegion) {
QueryString_Parse();
fTax = parseFloat(QueryString(OutputOrderTax));
strTax = moneyFormat(fTax);
}
if (bDisplay)
strOutput = "<TABLE CLASS=\"nopcart\"><TR>" +
"<TD CLASS=\"nopheader\"><B>"+strILabel+"</B></TD>" +
"<TD CLASS=\"nopheader\"><B>"+strDLabel+"</B></TD>" +
"<TD CLASS=\"nopheader\"><B>"+strQLabel+"</B></TD>" +
"<TD CLASS=\"nopheader\"><B>"+strPLabel+"</B></TD>" +
(DisplayShippingColumn?"<TD CLASS=\"nopheader\"><B>"+strSLabel+"</B></TD>":"") +
"</TR>";
for (i = 1; i <= iNumberOrdered; i++) {
NewOrder = "Order." + i;
database = "";
database = GetCookie(NewOrder);
Token0 = database.indexOf("|", 0);
Token1 = database.indexOf("|", Token0+1);
Token2 = database.indexOf("|", Token1+1);
Token3 = database.indexOf("|", Token2+1);
Token4 = database.indexOf("|", Token3+1);
fields = new Array;
fields[0] = database.substring(0, Token0); // Product ID
fields[1] = database.substring(Token0+1, Token1); // Quantity
fields[2] = database.substring(Token1+1, Token2); // Price
fields[3] = database.substring(Token2+1, Token3); // Product Name/Description
fields[4] = database.substring(Token3+1, Token4); // Shipping Cost
fields[5] = database.substring(Token4+1, database.length); //Additional Information
fTotal += (parseInt(fields[1]) * parseFloat(fields[2]));
fShipping += (parseInt(fields[1]) * parseFloat(fields[4]));
if (!TaxByRegion) fTax = (fTotal * TaxRate);
strTotal = moneyFormat(fTotal);
if (!TaxByRegion) strTax = moneyFormat(fTax);
strShipping = moneyFormat(fShipping);
if (bDisplay) {
strOutput += "<TR><TD CLASS=\"nopentry\">" + fields[0] + "</TD>";
if (fields[5] == "")
strOutput += "<TD CLASS=\"nopentry\">" + fields[3] + "</TD>";
else
strOutput += "<TD CLASS=\"nopentry\">" + fields[3] + " - <I>"+ fields[5] + "</I></TD>";
strOutput += "<TD CLASS=\"nopentry\">" + fields[1] + "</TD>";
strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[2]) + "/ea</TD>";
if (DisplayShippingColumn) {
if (parseFloat(fields[4]) > 0)
strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[4]) + "/ea</TD>";
else
strOutput += "<TD CLASS=\"nopentry\">N/A</TD>";
}
strOutput += "</TR>";
}
if (AppendItemNumToOutput) {
strFooter = i;
} else {
strFooter = "";
}
if (PaymentProcessor != '') {
//Process description field for payment processors instead of hidden values.
//Format Description of product as:
// ID, Name, Qty X
strPP += fields[0] + ", " + fields[3];
if (fields[5] != "")
strPP += " - " + fields[5];
strPP += ", Qty. " + fields[1] + "\n";
} else {
strOutput += "<input type=hidden name=\"" + OutputItemId + strFooter + "\" value=\"" + fields[0] + "\">";
strOutput += "<input type=hidden name=\"" + OutputItemQuantity + strFooter + "\" value=\"" + fields[1] + "\">";
strOutput += "<input type=hidden name=\"" + OutputItemPrice + strFooter + "\" value=\"" + fields[2] + "\">";
strOutput += "<input type=hidden name=\"" + OutputItemName + strFooter + "\" value=\"" + fields[3] + "\">";
strOutput += "<input type=hidden name=\"" + OutputItemShipping + strFooter + "\" value=\"" + fields[4] + "\">";
strOutput += "<input type=hidden name=\"" + OutputItemAddtlInfo + strFooter + "\" value=\"" + fields[5] + "\">";
}
}
if (bDisplay) {
strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strSUB+"</B></TD>";
strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2 ALIGN=RIGHT><B>" + MonetarySymbol + strTotal + "</B></TD>";
strOutput += "</TR>";
if (DisplayShippingRow) {
strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strSHIP+"</B></TD>";
strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2 ALIGN=RIGHT><B>" + MonetarySymbol + strShipping + "</B></TD>";
strOutput += "</TR>";
}
if (DisplayTaxRow || TaxByRegion) {
strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strTAX+"</B></TD>";
strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2 ALIGN=RIGHT><B>" + MonetarySymbol + strTax + "</B></TD>";
strOutput += "</TR>";
}
strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strTOT+"</B></TD>";
strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2 ALIGN=RIGHT><B>" + MonetarySymbol + moneyFormat((fTotal + fShipping + fTax)) + "</B></TD>";
strOutput += "</TR>";
strOutput += "</TABLE>";
if (PaymentProcessor == 'an') {
//Process this for Authorize.net WebConnect
strOutput += "<input type=hidden name=\"x_Version\" value=\"3.0\">";
strOutput += "<input type=hidden name=\"x_Show_Form\" value=\"PAYMENT_FORM\">";
strOutput += "<input type=hidden name=\"x_Description\" value=\""+ strPP + "\">";
strOutput += "<input type=hidden name=\"x_Amount\" value=\""+ moneyFormat((fTotal + fShipping + fTax)) + "\">";
} else if (PaymentProcessor == 'wp') {
//Process this for WorldPay
strOutput += "<input type=hidden name=\"desc\" value=\""+ strPP + "\">";
strOutput += "<input type=hidden name=\"amount\" value=\""+ moneyFormat((fTotal + fShipping + fTax)) + "\">";
} else if (PaymentProcessor == 'lp') {
//Process this for LinkPoint
strOutput += "<input type=hidden name=\"mode\" value=\"fullpay\">";
strOutput += "<input type=hidden name=\"chargetotal\" value=\""+ moneyFormat((fTotal + fShipping + fTax)) + "\">";
strOutput += "<input type=hidden name=\"tax\" value=\""+ MonetarySymbol + strTax + "\">";
strOutput += "<input type=hidden name=\"subtotal\" value=\""+ MonetarySymbol + strTotal + "\">";
strOutput += "<input type=hidden name=\"shipping\" value=\""+ MonetarySymbol + strShipping + "\">";
strOutput += "<input type=hidden name=\"desc\" value=\""+ strPP + "\">";
} else {
strOutput += "<input type=hidden name=\""+OutputOrderSubtotal+"\" value=\""+ MonetarySymbol + strTotal + "\">";
strOutput += "<input type=hidden name=\""+OutputOrderShipping+"\" value=\""+ MonetarySymbol + strShipping + "\">";
strOutput += "<input type=hidden name=\""+OutputOrderTax+"\" value=\""+ MonetarySymbol + strTax + "\">";
strOutput += "<input type=hidden name=\""+OutputOrderTotal+"\" value=\""+ MonetarySymbol + moneyFormat((fTotal + fShipping + fTax)) + "\">";
}
}
document.write(strOutput);
document.close();
}
//=====================================================================||
// END NOP Design SmartPost Shopping Cart ||
//=====================================================================||
Я знаю, что это очень много текста и кода, но я не думаю, что будет сложно найти решение, это только первый углубленный HTML-объект в моем курсе, и я надеюсь, что это сработает.
Люди по-прежнему используют венгерскую нотацию? – crush
@crush корзина для покупок была предоставлена нам для использования. ОЧЕНЬ старый – JamieB