我正在尝试将数据存储在.txt文件中。 数据已经出现在我的HTML页面上,但是我不知道如何将它们发布到txt文件中或将它们存储在会话中。
在主页上:
<?php
echo implode('<br/>', $res->email);
echo json_encode($res->password);
?>'
我想做以下事情:
<?php
$login = "
EMAIL : $_POST['$res->email'];
PASSWORD: $_POST['$res->password']; ";
$path = "login.txt";
$fp = fopen($path, "a");
fwrite($fp,$login);
fclose($fp);
?>
因此,此$ _POST ['$ res-> email'];不适合我,我进入login.txt:
EMAIL : json_encode(Array)
PASSWORD: implode('<br/>', Array)
答案 0 :(得分:1)
在string/interpolation context中,函数调用和$ _POST ['$ res-> email']都不起作用。
不熟悉时,您应该逐行组装文本数据:
$login = " EMAIL : "; # string literal
$login .= implode('<br/>', $res->email); # append function/expression result
$login .= CRLF; # linebreak
$login .= " PASSWORD: "; # string literal
$login .= json_encode($res->password); # append function/expression result
$login .= CRLF; # linebreak
代替老式的fopen / fwrite,只需将file_put_contents
与FILE_APPEND
标志一起使用。
答案 1 :(得分:1)
当您使用发布数据时,您会在php文件中接收它。您不从php文件发送帖子数据。考虑到这一点,您可以通过以下方式使用php处理此数据:
如果您收到的是邮寄数据:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="ReimbursementApp.Pages.MenuPage"
xmlns:telerikPrimitives="clr-namespace:Telerik.XamarinForms.Primitives;assembly=Telerik.XamarinForms.Primitives"
xmlns:telerik="clr-namespace:Telerik.XamarinForms.DataControls;assembly=Telerik.XamarinForms.DataControls"
Title="Menu">
<!--<ContentPage.ToolbarItems>
<ToolbarItem Activated="OnToolbarButtonClick" Order="Primary" Priority="0" Icon="hamburgerButtonIcon"/>
</ContentPage.ToolbarItems>
<Grid>
<telerikPrimitives:RadSideDrawer x:Name="drawer" DrawerLength="250">
</telerikPrimitives:RadSideDrawer>
</Grid>-->
<StackLayout VerticalOptions="FillAndExpand">
<ListView x:Name="ListViewMenu"
HasUnevenRows="True">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<Grid Padding="10">
<Label Text="{Binding Title}" FontSize="20"/>
</Grid>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackLayout>
</ContentPage>
这将显示已发布数据中存储在字段变量上的消息。但是请检查该字段是否始终是字符串(即使内容可能不是这样) 如果要动态访问字段,请记住该字段应为字符串,例如:
echo $_POST['field'];
这不会返回已发布的电子邮件,但会从Post中的一个名为“ example@gmail.com”的变量中返回内容。与:
相同$email = "example@gmail.com";
echo $_POST[$email]
但是现在做一个正确的例子。如果您的网页中包含此html
echo $_POST["example@gmail.com"];
您将能够从名为“电子邮件”的输入字段中恢复数据
<form action="/yourphp.php" method="post" target="_blank">
<input type="text" name="email">
<input type="submit" value="Submit">
</form>
,这将在输入内容中返回电子邮件。
清除此内容后,可以用不同的方式处理数据以将其发送到文件,但是通常您必须实例化处理程序,打开文件,写入内容,保存和关闭文件,具体取决于您的处理程序。