Hallo alle php developpers,
Ik ben overgegaan van een gratis server naar een betaalde. Dit hield ook in dat ik een nieuwere php versie erbij krijg.
Echter waar ik eerst een mooie pagina had met div's en een stukje twitter en laatste nieuws, heb ik nu slechts buiten de header een lege pagina:
http://prntscr.com/69ne7x

Tevens staat in de header
 include ('Statusbalk.php'); 
maar deze valt onder de header zoals je kan zien.
Ik wil voor ik heel mijn code plakken zeggen dat de *** de gegevens van database zijn die ik hier natuurlijk niet plaats, en de reden dat ik niet met mysqli werk is dat ik me er nog niet in verdiept heb dus dat tot nog toe alleen errors geeft ipv werkt.




<?php
session_start(); 

// Controleren of de bezoeker ingelogd is 
if(!isset($_SESSION['logged_in']) || $_SESSION['logged_in'] == false) 
{ 
    header('Location: login_form.php'); 
    exit(); 
} 

	$ip = getenv("REMOTE_ADDR") ; 

	require_once ('connect.php');

	
	$username = $_SESSION['gebruiker'];
	
	$sql = "UPDATE Accounts SET ip='$ip' WHERE naam='$username'";
	
	mysql_query($sql);

$result = mysql_query("select id from bans where ip='".$_SERVER['REMOTE_ADDR']."' ");
$num = mysql_num_rows($result);
if($num > 0){ die(header("Location: http://garagesimulator.nl//banerror.html")); 
}
	
?>


<html>

	<head>
<title>Homepage</title>
<header>
			<div style="height: 10%; width: 50%; left: 25%; text-align: center; position: absolute;">
<h1>Homepage</h1>

Voor nieuwtjes weetjes en informatie en nog veel meer....
</div>

<?php

session_start(); // zorg ervoor dat session_start ALTIJD bovenaan ALLES van je pagina staat, anders werkt het niet!
			include ('menu.html');

		

		$username = $_SESSION['gebruiker'];
		
		$sql = "SELECT * FROM Accounts where naam='$username'";
		$result = mysql_query($sql);

		while($row = mysql_fetch_array($result)) {
		$naam = $row  ['naam'];
		$xp = $row ['xp'];
		$geld = $row ['geld'];
		$info = $row ['zelfinfo'];
		$vipdagen = $row ['vipdagen'];
		$credits = $row ['credits'];
		$bevoegdheid = $row ['bevoegdheid'];
		}
		$result = mysql_query("select id from bans where ip='".$_SERVER['REMOTE_ADDR']."' ");
$num = mysql_num_rows($result);
if($num > 0){ die(header("Location: http://garagesimulator.nl//banerror.html")); 
}
	exit ();	
		
		?>


</header>
</head>

<div id="indexl">
<div id="vip">
<h3><font color="red">VIP mededeling</font></h3>
<?	$accounts = mysql_connect("****", "****", "*****") 
or die(mysql_error());

mysql_select_db("*****", $accounts);

$username = $_SESSION['gebruiker'];

$sql = "SELECT * FROM Accounts where naam='$username'";
$result = mysql_query($sql, $accounts);

while($row = mysql_fetch_array($result)) {
$naam = $row ['naam'];
$xp = $row ['xp'];
$geld = $row ['geld'];
$info = $row ['zelfinfo'];
$monteur = $row ['monteur'];
$vipdagen = $row ['vipdagen'];
}


if ($vipdagen >'0' and $vipdagen <'5' or $vipdagen == '5' ) {
echo "'<b>'Je vipaccount loopt bijna af overweeg deze te verlegen. Dir is niet verplicht wel vervallen alle extra auto's , gereedschappen en extra functies in het spel.'</b>'";}
elseif ($vipdagen > '5') { echo "Je kunt nog $vipdagen dagen genieten van de extra functies in het spel" ;}
elseif ($vipdagen == '0'){ echo "momenteel heb je geen vip-account!";}
else {
echo "geen VIP-account";}
?>
<h4>klik <a href="#">hier </a> om je VIP account te verlengen!</h4>
</div>

<div id="nieuwskort">
<?


function ubb($string) {
    $string = stripslashes($string);
    $string = htmlspecialchars($string);
    $string = nl2br($string);
    $string = preg_replace("#\[b\](.+?)\[/b\]#is", "<b>\\1</b>", $string); // [b][/b] -> <b></b>
    $string = preg_replace("#\[i\](.+?)\[/i\]#is", "<i>\\1</i>", $string); // [b][/b] -> <b></b>
    $string = preg_replace("#\[s\](.+?)\[/s\]#is", "<s>\\1</s>", $string); // [b][/b] -> <b></b>
    $string = preg_replace("#\[u\](.+?)\[/u\]#is", "<u>\\1</u>", $string); // [b][/b] -> <b></b>
    
    return $string;
}
	
    echo '<h3><font color="red">LAATSTE NIEUWS</font></h3>';
    $sql = mysql_query("SELECT * FROM updates ORDER BY id DESC LIMIT 1");
    if (mysql_num_rows($sql) == 0) {
        echo 'Er zijn nog geen updates!';
    } else {
        while($data = mysql_fetch_assoc($sql)) {
            echo '<b>'.htmlspecialchars(stripslashes($data['titel'])).'</b><br>';
                        echo ubb($data['bericht']).'</i><br><br>';
  echo '<i>'.htmlspecialchars(stripslashes($data['datum'])).'<br><br>';

          
        }
    }
echo 'lees <a href="garagesimulator.nl/nieuws2.php">hier</a> meer';

?>

</div>
</div>

<div id="welkom">
<?

	$sql = "SELECT * FROM Accounts where naam='$username'";
		$result = mysql_query($sql);

		while($row = mysql_fetch_array($result)) {
		$naam = $row  ['naam'];
		$garage = $row  ['garage'];		
		}
echo '<b><h3>Welkom terug  bij '.$garage.' '.$naam.',<br>  je mensen wachten op je in de garage.</h3></b>'; ?>

</div>
<div id="twitt">
<a class="twitter-timeline" href="https://twitter.com/garagesim" data-widget-id="565980094406344704">Tweets door @garagesim</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>

</div>

</html>






Hoop dat jullie mij meer kunnen vertellen
Gebruik nu zo te zien 5.3, maar dan moete de div's toch alsnog weergeven worden?
Zijn er foutmeldingen?

Voeg het volgende (inmiddels welbekende) codefragment boven aan je pagina('s) toe:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 'stdout');
?>
Gebruik de <?php en ?>-tags.
Was 1 error en heb die verwijdert. ook geen resultaat. en toegepast @aar
Welke error? En wat heb je aangepast?

Verder raad ik aan om op strategische plekken een 'echo' te plaatsen zodat je weet wat er wel en juist niet wordt uitgevoerd. Zo kan je achterhalen waar het ongeveer fout lijkt te gaan.
Waren 2 session start's

[size=xsmall]Toevoeging op 25/02/2015 15:48:55:[/size]

Op rij 70 (in script hierboven rij 67) een echo geplaatst en krijg niks te zien
Dan wordt het even debuggen vrees ik, zoals ik net uitlegde.
Ook zie ik dat je enkele mysql-functie al gebruikt voordat je de connectie gestart hebt.

Tevens raad ik aan om eens te kijken naar de MySQLi-functies, omdat de oude MySQL-functie ter ziele zullen gaan in een volgende PHP-versie.
Aha, maar heb geen errors en de divs werken niet. weet dus niet hoe ik dit kan aanpakken
Je pagina kan ook "hangen" als je JavaScript aan het uitvoeren bent in een div of table, het hele render-proces wacht dan op de respons van je javascript.

Zet alle inline JavaScript aan het einde van je document, buiten elke HTML-tag, net voor je </body> tag.

Als je hele gekke dingen doet in je PHP script (of zaken die veel geheugen vreten) kun je over je geheugenlimiet heengaan, vaak zit dan alleen in je errorlog een foutmelding en blijft je pagina verder leeg. Al zie ik hier niet hele gekke dingen gebeuren al zou je je code beter kunnen organiseren door functies enzo in aparte bestanden te zetten...

Mijn advies is dan ook: bekijk je errorlogs.

Reageren