Javascript Ionic2创建PHP以获取在页面中显示的数据

Javascript Ionic2创建PHP以获取在页面中显示的数据,javascript,php,typescript,ionic-framework,ionic2,Javascript,Php,Typescript,Ionic Framework,Ionic2,我想知道如何创建PHP来获取show home.html的数据 我得到了“错误数据没有定义” 我不知道这是对的?请检查这个。我没有创建PHP的想法,我想设置$path来保存我的URL <ion-content> <ion-list inset> <ion-item> <ion-label>Username</ion-label> <ion-input [(ng

我想知道如何创建PHP来获取show home.html的数据

我得到了“错误数据没有定义”

我不知道这是对的?请检查这个。我没有创建PHP的想法,我想设置$path来保存我的URL

<ion-content>
    <ion-list inset>
        <ion-item>
            <ion-label>Username</ion-label>
            <ion-input [(ngModel)]="data.username" type="text"></ion-input>
        </ion-item>
    </ion-list>
    <div padding>
        <button ion-button block (click)="getRepos()">Search</button>
    </div>
    <ion-card *ngFor="let repo of foundRepos" >
        <ion-card-header>
            {{ repo.data.name }}
        </ion-card-header>
        <ion-card-content>
            {{ repo.data.description }}
        </ion-card-content>
    </ion-card>
</ion-content>

用户名
搜寻
{{repo.data.name}
{{repo.data.description}

从“@angular/core”导入{Component};
从'ionic angular'导入{NavController};
从'@angular/Http'导入{Http};
@组成部分({
选择器:“主页”,
templateUrl:'home.html'
})
导出类主页{
公共基金回购;
构造函数(公共http:http){
this.data={};>>>>>>>未定义数据
data.username='';>>>>>未定义数据
this.http=http;
}
getRepos(){
var-link=http://localhost/github.php';

var data=JSON.stringify({username:this.data.username});您尚未在类中声明数据变量

export class HomePage {
  public foundRepos;
  public data;//here
  constructor(public http: Http){
    this.data = {};
    this.data.username = '';//to refer to data in any function always use 'this'
  }
//other functions

您尚未在类中声明数据变量

export class HomePage {
  public foundRepos;
  public data;//here
  constructor(public http: Http){
    this.data = {};
    this.data.username = '';//to refer to data in any function always use 'this'
  }
//other functions
啊,我明白了

在php中,您正在检索一个名为
$postdata
的值。因此,我假设您希望将用户名从ionic 2应用程序发送到php文件

2个选项,您应该尝试两者,因为我不懂php,所以我不确定正确的解决方案是什么

但我知道问题出在哪里。您正在生成一个
http.get()
调用,您将在此过程中传递两个参数。
link
data
。GET方法用于从链接中获取数据,而不是提供数据。
http.GET
包含两个参数,
url
,在您的示例中命名为
link
,以及
HttpHeaders
对象,因此not数据

解决方案带有http.get中的参数

因此,如上所述,
http.get()
无法发送您的
数据
。除非您将其作为参数添加到URL中。然后,您的类型脚本将如下所示(注意:倒勾代替“”,使字符串更容易合并):

用php替换

$username = $response->username

所以最后的typscript看起来像这样(因为php get请求返回403,Github可能不允许它)

如果有人想详细解释我们为什么得出这个答案,请查看下面的聊天

啊,我明白了

在php中,您正在检索一个名为
$postdata
的值。因此,我假设您希望将用户名从ionic 2应用程序发送到php文件

2个选项,您应该尝试两者,因为我不懂php,所以我不确定正确的解决方案是什么

但我知道问题出在哪里。您正在生成一个
http.get()
调用,您将在此过程中传递两个参数。
link
data
。GET方法用于从链接中获取数据,而不是提供数据。
http.GET
包含两个参数,
url
,在您的示例中命名为
link
,以及
HttpHeaders
对象,因此not数据

解决方案带有http.get中的参数

因此,如上所述,
http.get()
无法发送您的
数据
。除非您将其作为参数添加到URL中。然后,您的类型脚本将如下所示(注意:倒勾代替“”,使字符串更容易合并):

用php替换

$username = $response->username

所以最后的typscript看起来像这样(因为php get请求返回403,Github可能不允许它)



如果有人想详细解释我们为什么会得出这个答案,请在下面的聊天中查看

@Ivaro18请帮助我。当你在我没有发布的评论中提到我时,我看不到它,只是偶然发现了这个哈哈。我对
php
没有经验,你的typescript代码还有问题吗?(顺便说一句,您是否有
属性“data”在类型“HomePage”上不存在?
)哦,没关系,只是看看答案below@Ivaro18我有几个问题要问你。我可以通过什么方式与你联系???@Ivaro18请帮帮我。当你在我没有发布的评论中提到我时,我看不出来,只是偶然发现了这个哈哈。我没有使用
php
的经验,你的typescript代码还有问题吗?(顺便说一句,你难道没有一个
属性“data”在类型“HomePage”上不存在吗?
?)哦,没关系,看看答案就知道了below@Ivaro18我有几个问题要问你。我可以通过某种方式与你联系??谢谢,但仍然有错误
data.username='';
this.http.get(链接,数据)
myphp是真的吗?在typescript中,始终使用
来引用类成员。否则typescript编译器将抛出错误。对于php,它并不是真正发送json数据。只是StringOhh,我该怎么办?请帮助我,我想在myphpThanks中获取url中的数据,但仍然错误
data.username='';
这s、 http.get(链接、数据)
而myphp是真的吗?在typescript中,始终使用
来引用类成员。否则typescript编译器将抛出错误。对于php,它并不是真正发送json数据。只需stringohhh,我该怎么办?请帮助我,我想在myphpstill error
中的url中获取数据在json中的位置0处
什么代码导致此错误?可能是xml响应您是否有时间?请与我一起使用teamviewer?我目前正在工作,这不是teamviewer的最佳位置,但是如果您(在订阅中)创建
console.log(“hi”+数据)
是否打印了某些内容?仍然错误
位置0处的JSON中出现意外标记<
是什么代码导致此错误?可能是xml响应您有时间吗?请与我一起使用teamviewer?我目前正在工作,不是teamviewer的最佳位置,但是如果您(在订阅中)创建
控制台.log(“hi”+数据
$username = $response->username
$username = $_GET['username']
getRepos() { 
  var link = `localhost/…${this.data.username}`; 

  this.http.get(link) 
    .subscribe(data => { 
      let repoUrl = data.text(); 

      this.http.get(repoUrl).subscribe(githubResponse => { 
        this.foundRepos = githubResponse.json(); 
      }); 
  }, 
  err => console.error(err), 
  () => console.log('getRepos completed') 
  ); 
}