Ik kom er niet uit waarom de <title> niet als <title> wordt getoond



<?php
if	(is_numeric($_GET['id']))
	{$id = $_GET['id'];}

include_once "inc_connect.php"; //verbinding maken
function showtitle($id)
{$qnt ="
SELECT
n.NewsItem_Titel as newsitemtitel
FROM newsitems n
WHERE n.NewsItem_ID='".$id."'
AND n.NewsItem_Publist='Y'";

$sqlnt = mysql_query($qnt) or die ( mysql_error( ) );//query is uitgevoerd
while($record = mysql_fetch_array($sqlnt))
{
$titel2 = $record['newsitemtitel'];
echo ($titel2);
}
}
echo"
<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'>
<html>
<head>
  <meta http-equiv='content-type' content='text/html; charset=iso-8859-1'>
  <title>".showtitle($id)."</title>
</head>
<body>
<br>
<strong>";showtitle($id);

echo"</strong></body>
</html>";
?>
Zet dit bovenin je script.
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);

// rest
?>
Hey vriend leuke functie maar je moet je opgehaalde titel niet echo in de functie maar returne ;)

Zo bijvoorbeeld.

<?php
function get_title($title){
  $make_title = 'www.'.$title.'.nl';
  return $make_title;
}

echo get_title('phphulp');
?>
Wat is het verschil tussen echo en return bij zoon, functies
Echo laat iets direct zien, een return geeft een variable terug aan de call, die dan word gegechod.

Dus als je een functie had die iets strip_tagde


<?php

$naam = "<h6>Stefan</h6>";

function stripelementen($naam)
{
$naam = strip_tags($naam);

return $naam;
}


// en dan call je hem zo:

Print(stripelementen($naam));
// Je kan hem ook echo'en
echo(stripelementen($naam));
?>


De return geeft de waarde terug, een echo geeft de waarde weer.
En het verschil tussen print en echo???
Op zich niks. Doet precies het zelfde, en dat is html tonen. Trouwens, niet naar stefan luisteren. Een functie roep je zo aan: functie($waarden);

als je een echo in een functie hebt, en je roept de functie alleen al aan, dan komt het resultaat al op je scherm. Als er geen echo in zit, maar een return $waarden; dan moet je voor de functie een echo zetten. zo dan: echo functie($waarden);

Handiger is: $opgehaaldeWaarden = functie($waarden);
zo kan je de opgehaalde waarde hergebruiken :)

Maar doe niet echo(stripelementen($naam));
dat is stefan style. En fout.
En hoe is dat fout? Het werkt perfect..
Dat zal wel... Werk eens met E_ALL....

error_reporting(E_ALL);
ini_set("display_errors", 1);

en lees je warnings.

een functie is FUNCTIE(WAARDE)

daar over kan je niet in discussie met me, dat is zo. dus leer het anders aan.
van wat ik weet is dat (iets) betekend, eerst uitvoeren. zoals: 9*9 + (8-1). Bij functies is dit niet goed.
Dan is dat van mij toch goed?

mijn functie gaat als volgt:

function naam(waarde)

alleen heb ik effe dezelfde variable gebruikt voor de waarde, namelijk $naam, die ik heb gezet naar <h6>Stefan</h6>

dan call ik mijn functie aan en echo ik hem meteen, dat is dus hetzelfde als $blabla = stripelementen($naam);
echo $blabla

scheelt weer een regeltje code.
nee dat is niet waar.

Koppig kreng. Probeer een echo zonder die haken erom heen. en nogmaals zet je error reporting op E_ALL en kijk dan naar de notices. Er is gewoon geen discussie mogelijk, wat je doet is fout.

GOED
echo functie($var);


FOUT
echo(functie($var));

Reageren