Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从数据库中删除用户_Php_Facebook - Fatal编程技术网

Php 从数据库中删除用户

Php 从数据库中删除用户,php,facebook,Php,Facebook,我是PHP新手,遇到了以下问题。当用户登录(page2.php)时,会将其添加到数据库中,但我遇到的问题是,当用户转到page3.php时,会将其从数据库中删除。任何帮助都将不胜感激。非常感谢 Page2.php <?php echo "<p> Hello World!</p>"; // php 5.3 and up can throw an error if this is not set

我是PHP新手,遇到了以下问题。当用户登录(page2.php)时,会将其添加到数据库中,但我遇到的问题是,当用户转到page3.php时,会将其从数据库中删除。任何帮助都将不胜感激。非常感谢

Page2.php

        <?php 
          echo "<p> Hello World!</p>";

        // php 5.3 and up can throw an error if this is not set  
        date_default_timezone_set("Europe/London");


        // much of the example code on the web forgets to include these HttpClients, for some reason
        require_once( '../docs/Facebook/HttpClients/FacebookHttpable.php' );
        require_once( '../docs/Facebook/HttpClients/FacebookCurl.php' );
        require_once( '../docs/Facebook/HttpClients/FacebookCurlHttpClient.php' );
        require_once( '../docs/Facebook/FacebookSession.php' );
        require_once( '../docs/Facebook/FacebookRedirectLoginHelper.php' );
        require_once( '../docs/Facebook/FacebookRequest.php' );
        require_once( '../docs/Facebook/FacebookResponse.php' );

        require_once( '../docs/Facebook/FacebookSDKException.php' );
        require_once( '../docs/Facebook/FacebookRequestException.php' );
        require_once( '../docs/Facebook/FacebookAuthorizationException.php' );
        require_once( '../docs/Facebook/GraphObject.php' );

        // This one is also often left out
        require_once( '../docs/Facebook/Entities/AccessToken.php');

        // store your $HOSTNAME, $APPID and $SECRET in this file:
        require_once( '../docs/my_app_credentials.php' );

        use Facebook\FacebookSession;
        use Facebook\FacebookRedirectLoginHelper;
        use Facebook\FacebookRequest;
        use Facebook\FacebookResponse;
        use Facebook\FacebookSDKException;
        use Facebook\FacebookRequestException;
        use Facebook\FacebookAuthorizationException;
        use Facebook\GraphObject;

        session_start();

        // init app with app id (APPID) and secret (SECRET)
        FacebookSession::setDefaultApplication($APPID,$SECRET);

        // login helper with uri
        $PAGENAME="page2.php";
        $REDIRECT_URL="http://".$HOSTNAME.'/'.$PAGENAME;

        $helper = new FacebookRedirectLoginHelper( $REDIRECT_URL );
        try {
            echo "<p> about to try to get session: the helper variable: </p>";
            $session = $helper->getSessionFromRedirect();
        //  echo "<p> the session variable:</p>";
        //  var_dump($session);
            } catch( FacebookRequestException $ex ) {
          // When Facebook returns an error
          echo "<p> There was a facebook request exception</p>";
        } catch( \Exception $ex ) {
          echo "<p> There was a validation failure</p>";
          var_dump($ex);

          // When validation fails or other local issues
        }
          echo "<p> 'get session' block now completed...</p>";

        // see if we have a session
        if ( isset( $session ) ) {
          echo "<p> Now try to get a graph node</p>";

          // graph api request for user data
          $request = new FacebookRequest( $session, 'GET', '/me' );
          $response = $request->execute();
          // get response
          $graphObject = $response->getGraphObject();

          // print data
          echo  print_r( $graphObject, 1 );


          $FBID=$graphObject->getProperty('id');
          $FIRSTNAME=$graphObject->getProperty('first_name');
          $SECONDNAME=$graphObject->getProperty('last_name');
          $TOKEN=$_GET['code'];

          //write code to check if current user is in database
          //if not add them to database
          //finally, give link to page3.php which removes them (user) from database.
          $con = mysqli_connect("localhost", "", "", "");
          $query = "SELECT FBID FROM USERS WHERE FBID='$FBID'";

          $result = $con->query($query);

          if ($result) {
          echo "Username already exists!";
        }
          else
          {

           $con->query("INSERT INTO USERS (FBID,FIRSTNAME,SECONDNAME,TOKEN) VALUES ('$FBID','$FIRSTNAME','$SECONDNAME','$TOKEN')");
            echo"user inserted";

          }


        } else {
          // show login url
          echo 'No session was set. Try logging in again by clicking here: <a href="' . "page1.php". '">Login</a>';
        }


        ?>
您的SQL错误

您希望
删除
而不是
删除
。例如:

DELETE FROM USERS WHERE FBID='$FBID';
删除某个字段中的内容将删除整行,而不仅仅是一个字段(因此用户将被删除)

确保在
page3.php
中通过facebook API或使用
$\u POST
调用
$FBID

要在php中通过
POST
发送数据,可以执行以下操作:

<form action='page3.php' method='post' name='page3form'>
  <?php
    echo "<input type='text' name='FBID' value='$FBID' /> 
  ?>
</form>

<script>
  document.page3form.submit();
</script>


Page3.php中这些变量的值应该来自哪里?如果这是该页面中的所有代码,那么它当然不起作用。您的第一步应该是正确配置PHP的错误报告,以便它告诉您类似的内容。然后你的第二步是学习一些PHP基础知识,因为如果你认真地认为这应该是可行的,那么你显然缺乏一些非常基础的知识……另外,一些mysql基础知识可能会有用。通过一个非常简单的谷歌搜索,你会发现“DROP”不是用来删除表中的一行的。非常感谢,你能不能稍微说明一下如何使用$\u POST调用$FBID@BeatAlex感谢您的回复,我如何在page2.php上添加指向page3.php的href链接而不终止您可以使用的会话
session_start()@Redlight
<form action='page3.php' method='post' name='page3form'>
  <?php
    echo "<input type='text' name='FBID' value='$FBID' /> 
  ?>
</form>

<script>
  document.page3form.submit();
</script>