Oprettet tor. d. 13. september 2012 kl. 12:52:44

jesperkaae95
jesperkaae95 (4.310 point. Point ude: 210)

PHP file_get_contents forhindre mig i at lave en database connection

Hej eksperter! har virkelig brug for jeres hjælp. Jeg er lige startet med at lave en facebook login på min side via SDK PHP. Men når jeg laver min

$access_token_response = file_get_contents("https://graph.facebook.com/ (...));

så slår den fejl ved en database connection længere ned på siden.? Jeg har prøvet mig frem og fejlen ligger præsics imellem  $access_token_response = file_get_contents("https://graph.facebook.com/ (...)); og min databaseconnection efter en masse sletten og forsøg, kan man lave noget om på file_get_contents ? eller afbryder den bare alle databaseconnections?

Mvh jesper

Skrevet tor. d. 13. september 2012 kl. 13:18:17| #1

Det tror jeg ikke den gør. Men uden hverken kode eller fejlmeddelelse kan vi ikke hjælpe dig.

Skrevet tor. d. 13. september 2012 kl. 13:21:03| #2

olebole
olebole (216.743 point)
<ole>

Det kan ikke ske. Hvis din DB-forbindelse ryger - eller ikke kan oprettes - skyldes det noget andet.

Har du mon slået fejlmeldinger fra i PHP? Prøv at skrive dette øverst i dokumentet:

<?php
error_reporting(E_ALL);

/mvh
</bole>

Skrevet tor. d. 13. september 2012 kl. 21:49:34| #3

jesperkaae95
jesperkaae95 (4.310 point)
Hej michael og hej olebole.

jeg har jo en enorm kode, men prøver at gøre den lille :-) og håber i kan hjælpe mig med den!

Vi starter i toppen hvor min facebook connection kode er:

<?php
session_start();
define('YOUR_APP_ID', 'min app id');
define('YOUR_APP_SECRET', 'mit secret');

function get_facebook_cookie($app_id, $app_secret) {
    $signed_request = parse_signed_request(@$_COOKIE['fbsr_' . $app_id], $app_secret);

    $signed_request['uid'] = $signed_request['user_id']; //
    if (!is_null($signed_request)) {
     
        $access_token_response = file_get_contents("https://graph.facebook.com/ (...));
        parse_str($access_token_response);
        $signed_request['access_token'] = $access_token;
        $signed_request['expires'] = time() + $expires;
    }
    return $signed_request;
}

function parse_signed_request($signed_request, $secret) {
  list($encoded_sig, $payload) = explode('.', $signed_request, 2);


  $sig = base64_url_decode($encoded_sig);
  $data = json_decode(base64_url_decode($payload), true);

  if (strtoupper($data['algorithm']) !== 'HMAC-SHA256') {
    error_log('Unknown algorithm. Expected HMAC-SHA256');
    return null;
  }


  $expected_sig = hash_hmac('sha256', $payload, $secret, $raw = true);
  if ($sig !== $expected_sig) {
    error_log('Bad Signed JSON signature!');
    return null;
  }

  return $data;
}

function base64_url_decode($input) {
  return base64_decode(strtr($input, '-_', '+/'));
}

if (isset($_COOKIE['fbsr_' . YOUR_APP_ID]))
{
$cookie = get_facebook_cookie(YOUR_APP_ID, YOUR_APP_SECRET);

$user = json_decode(@file_get_contents(
    'https://graph.facebook.com/ (...) .
    $cookie['access_token']));
}

?>

så længere nede er der login til denne facebook kode som er:


?php if (@$cookie) { ?>
<h2>Welcome <?= $user->name ?> </h2> <br />
E-mail ID: <?= $user->email ?> <?= $user->gender ?>
<br />
<a href="java script://" onclick="FB.logout(function() { window.location='facebook-login.php' }); return false;" >Logout</a>
<?php } else { ?> 
<div id="fb-root"></div>
<fb:login-button src="http://minside.com/ (...) perms="email, user_status, user_about_me" width="width_value" autologoutlink="true" size="small"></fb:login-button>
<?php } ?>


og så kommer det tidspunkt hvor jeg skal echo noget ud fra min database til forsiden:

<?
$host ="localhost";
$database = "hemmeligt";
$username ="hemmeligt";
$pass ="hemmeligt";

mysql_connect($host, $user, $pass)
or die ('cannot connect to the database: ' . mysql_error());

mysql_select_db($database)
or die ('cannot select database: ' . mysql_error());

$result = mysql_query("SELECT * FROM hemmeligt");



while($row = mysql_fetch_array($result))
  {
  $gamename = $row['gamename'];
  $gameembed = $row['gameembed'];
  $gameviewd = $row['view'];
  $gameimurl = $row['imageurl'];
  $gamecategory = $row['category'];
  $spilid = $row['id'];
 
  echo "<li>
                                <div class='preview'><a href='game.php?id=$spilid' class='frame'><img src='$gameimurl' alt=''/></a></div>
                                <a class='title' href='game.php?id=$spilid'>$gamename</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>";
 
 
  }

?>

Problemet er at den kun viser halvdelen af siden? forstår det simpelthen ikke. Det er som om den bloker fra inholdet ned efter der hvor min database connection er. Og olebole har prøvet med dit <?php
error_reporting(E_ALL); det virkede desværre ikke :(

Men det der sker er efter min database connection, forsvinder resten af siden. Hvis jeg sætter min databaseconnection op i toppen af siden så virker det, altså over facebook SDK koden. Hvad skal jeg gøre :(?

Mvh jesper kaae

Skrevet fre. d. 14. september 2012 kl. 13:35:41| #4

olebole
olebole (216.743 point)
Det kan jeg ikke fortælle dig udfra stumperne ovenfor. Jeg tror, man er nødt til at sidde med filerne selv

Skrevet fre. d. 14. september 2012 kl. 14:09:21| #5

jesperkaae95
jesperkaae95 (4.310 point)
Hej olebole. Jamen jeg ved jo ikke hvordan jeg skal gøre?

De stumper jeg har sendt der er der hvor fejlen ligger i. Altså SDK'en ligger øverst, og så kommer login og det lidt neden under og så kommer database connection under det igen? hvis du kan hjælpe over teamviewer eller noget ville det være lækkert?

Mvh jesper

Skrevet fre. d. 14. september 2012 kl. 14:22:43| #6

olebole
olebole (216.743 point)
Det kan godt være, at du ikke ved, hvad du skal gøre - men det betyder da ikke, at jeg ved det  =)

"De stumper jeg har sendt der er der hvor fejlen ligger i"

Sålænge, du ikke ved, hvori fejlen består, kan du naturligvis ikke vide, om du viser stedet, hvor fejlen ligger. Vi andre kan f.eks. ikke vide, hvor følgende IF-sætning stopper - og om fejlen evt. ligger i resten af den:

if (isset($_COOKIE['fbsr_' . YOUR_APP_ID]))

Er det noget, du objektivt ved?

Skrevet fre. d. 14. september 2012 kl. 14:23:51| #7

olebole
olebole (216.743 point)
- og nej, jeg løser ikke ekspertenspørgsmål over TeamViewer. Den slags foregår her

Skrevet fre. d. 14. september 2012 kl. 14:27:22| #8

jesperkaae95
jesperkaae95 (4.310 point)
Okay olebole :-)) men det eneste php jeg har på min side er det jeg har sendt, og det er sådan det er sat op :-)) så alt andet inde på min side er html. :-))

Mvh jesper

Skrevet fre. d. 14. september 2012 kl. 15:00:45| #9

olebole
olebole (216.743 point)
Præcis hvad er det sidste, der bliver skrevet ud til dokumentet?

Skrevet fre. d. 14. september 2012 kl. 15:06:27| #10

jesperkaae95
jesperkaae95 (4.310 point)
det her er det der kommet efter database connectionen som den ikke gider vise:

       
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/01.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/02.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/03.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/04.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                        </ul>
                    </div>
                    <div id="tab2" class="tab_content">
                        <ul class="items homepage">
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/06.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/05.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/04.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/03.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                        </ul>
                    </div>
                    <div id="tab3" class="tab_content">
                        <ul class="items homepage">
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/03.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/01.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/04.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/06.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                        </ul>
                    </div>
                    <div id="tab4" class="tab_content">
                        <ul class="items homepage">
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/02.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/04.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/01.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                            <li>
                                <div class="preview"><a href="#" class="frame"><img src="images/portfolio/05.jpg" alt=""/></a></div>
                                <a class="title" href="#">Item title</a>
                                <p>Lorem ipsum dolor sit amet, cons eiusmod incididunt.</p>
                            </li>
                        </ul>
                    </div>
                </div>
                <a class="infobox" href="portfolio_3col_filterable_sidebar.html"> Show all the entries.</a>
                <br/>
                <br/>
                <div class="container_12">
                    <div class="grid_4">
                        <h3>Main features</h3>
                        <ol class="list ticklist">
                            <li><span>Aliquam arcu ipsum.</span></li>
                            <li><span>Curabitur ultricies facilisis posuere.</span></li>
                            <li><span>Morbi mollis sem in augue commodo dignissim.</span></li>
                            <li><span>Aliquam arcu ipsum.</span></li>
                            <li><span>Curabitur ultricies facilisis posuere.</span></li>
                            <li><span>Morbi mollis sem in augue commodo dignissim.</span></li>
                        </ol>
                    </div>
                    <div class="accordion grid_8">
                        <div class="trigger"><a href="#">Toggle. Clikc here to show/hide content</a></div>
                        <div class="container">
                            <p><b>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium.</b></p>
                            <p>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupid.</p>
                        </div>
                        <div class="trigger"><a href="#">Toggle. Clikc here to show/hide content</a></div>
                        <div class="container">
                            <p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium.</p>
                            <p>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupid.</p>
                        </div>
                        <div class="trigger"><a href="#">Toggle. Clikc here to show/hide content</a></div>
                        <div class="container">
                            <p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium.</p>
                            <p>At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupid.</p>
                        </div>
                    </div>
                </div> <!-- container_12 -->
            </div> <!-- inner -->
            <div id="end">
                <div class="inner container_12">
                    <div class="grid_3">
                        <h3>Our clients</h3>
                        <p>Mauris dictum risus eget urna laoreet voluptatum ac placerat dolor varius.</p>
                    </div>
                    <div class="grid_9 scroll">
                        <div class="window">
                            <ul class="reel">
                                <li><a href="#"><img src="images/logos/html5.png" alt=""/></a></li>
                                <li><a href="#"><img src="images/logos/jquery.png" alt=""/></a></li>
                                <li><a href="#"><img src="images/logos/htc.png" alt=""/></a></li>
                                <li><a href="#"><img src="images/logos/wordpress.png" alt=""/></a></li>
                                <li><a href="#"><img src="images/logos/coke.png" alt=""/></a></li>
                                <li><a href="#"><img src="images/logos/css3.png" alt=""/></a></li>
                                <li><a href="#"><img src="images/logos/pullnbear.png" alt=""/></a></li>
                                <li><a href="#"><img src="images/logos/audi.png" alt=""/></a></li>
                            </ul>
                        </div>
                        <a class="arrow_right" href="#"></a>
                        <a class="arrow_left" href="#"></a>
                    </div>
                </div> <!-- inner -->
            </div> <!-- end -->
        </div> <!-- content -->
       
        <footer id="footer">
            <div class="container_12">
                <div class="grid_8">
                    <h4>About Mirage</h4>
                    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Ut enim ad minim veniam, quis nostrud exercitation.</p>
                </div>
                <div class="grid_4">
                    <h4>Follow us!</h4>
                    <p>Ut enim ad minim veniam, quis nostrud exercitation.</p>
                    <ul class="socials">
                        <li><a href="#"><img src="images/social/twitter_32.png" alt=""/></a></li>
                        <li><a href="#"><img src="images/social/facebook_32.png" alt=""/></a></li>
                        <li><a href="#"><img src="images/social/rss_32.png" alt=""/></a></li>
                        <li><a href="#"><img src="images/social/google_plus_32.png" alt=""/></a></li>
                        <li><a href="#"><img src="images/social/dribbble_32.png" alt=""/></a></li>
                        <li><a href="#"><img src="images/social/vimeo_32.png" alt=""/></a></li>
                        <li><a href="#"><img src="images/social/youtube_32.png" alt=""/></a></li>
                    </ul>
                </div>
            </div>
            <hr>
            <span id="copyright">Copyright &copy; 2012 <a href="#"><img src="images/vs32.png" alt=""/> virtualsense</a>. All Rights Reserved.</span>
            <ol class="links right">
                <li><a href="#">Home</a></li>
                <li><a href="#">Portfolio</a></li>
                <li><a href="#">Blog</a></li>
                <li><a href="#">Contact</a></li>
            </ol>
        </footer>
    </div> <!-- wrapper -->

</body>


</html>

Skrevet fre. d. 14. september 2012 kl. 15:21:44| #11

$host ="localhost";
$database = "hemmeligt";
$username ="hemmeligt";
$pass ="hemmeligt";

mysql_connect($host, $user, $pass)

Skal det ikke være $username?

Skrevet fre. d. 14. september 2012 kl. 15:24:56| #12

olebole
olebole (216.743 point)
Den HTML-kode er ikke skrevet ud af PHP-koden i #3

Skrevet fre. d. 14. september 2012 kl. 15:28:45| #13

olebole
olebole (216.743 point)
#11: Godt set! Det er helt klart en fejl - men jeg forstår stadig ikke, hvad #10 er for en kode - eller hvor den kommer fra  =)

Skrevet fre. d. 14. september 2012 kl. 15:37:11| #14

#13
Tror det er almindelig HTML som kommer efter PHP-koden.

Skrevet fre. d. 14. september 2012 kl. 16:00:43| #15

olebole
olebole (216.743 point)
#14: Hvis ikke koderne efter mysql_connect kyler tydelige fejl i alle retninger, tror jeg mere, der er tale om et helt andet dokument

Skrevet fre. d. 14. september 2012 kl. 16:17:38| #16

#15
Tror det er Apache/PHP der er sat op til at stoppe eksekveringen af php-dokumentet efter fejl.

[HTML-kode] Eksekveres
.
.
.
[PHP-kode med fejl] Eksekveres ej
.
.
.
[HTML-kode] Eksekveres ej

Men det kan vi jo æggehvide før opretter kommer på banen.

Skrevet fre. d. 14. september 2012 kl. 17:11:08| #17

jesperkaae95
jesperkaae95 (4.310 point)
Hej michael og olebole tak for hjælpen!!

og haha michael du fandt sku fejlen :-)) undskyld mit sprog men det var da utrolig at jeg ikke havde set den lidt før.. Men tak for hjælpen. Gider du smide et svar :-))

Mvh jesper :D

Skrevet tir. d. 11. december 2012 kl. 21:28:24| #18

jesperkaae95
jesperkaae95 (4.310 point)
Eftersom micheal ikke har smidt et svar. Lukker jeg den nu. hvis du vil have dine points skriv en personlig besked. Så finder vi ud af det.
lukket

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   


Seneste spørgsmål

ZF2 Entity was not found

Oprettet den 23. maj 2013 kl. 12.51
zorkmontana giver 60 point for svar | Giv et svar »

hjælp til php / mysql

Oprettet den 23. maj 2013 kl. 10.54
AOT1977 giver 30 point for svar | Giv et svar »

Hjælp til database kolonne

Oprettet den 22. maj 2013 kl. 17.44
StotheT giver 30 point for svar | Giv et svar »








Tips & Tricks fra PC World

Teaser billede

Fem smarte funktioner i din Mac som du sikkert ikke kender

Her har du fem muligheder for at tweake din Mac på en fed måde.


Anmeldelser fra PC World

Teaser billede

Test: Samsung Galaxy S4 er et hit - trods gøglertricks

Kan Samsung beholde førertrøjen i det store Android-race? Galaxy S4 er smækfyldt med innovative funktioner, men også med en del gøgl. Er det for meget? Få vores dom over Samsungs nye topmodel.


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Ny opfindelse: Oplad din mobil på 20 sekunder

Måske er det snart slut med at lade mobilen op hver aften. Med ny opfindelse kan telefonen få fuld energi på sølle 20 sekunder.


Nyheder fra Computerworld

Teaser billede

Galleri: De 10 vildeste datacentre i verden

I en gammel kirke, i et oppusteligt telt, på nedlagte militæranlæg eller midt i ørkenen. Der er ingen grænser for, hvor man kan banke et datacenter op. Her er de 10 sejeste anlæg i verden. I...


IT Kurser
Samarbejdspartnere

Udgiver · © 2013 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger