substring probleem, als ik 't goed begrijp...
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
include('db_config.php');
include('data.php');
$id = $_GET['id'];
$res = mysql_query("SELECT b.id, b.titel, b.content, c.categorie FROM bericht AS b INNER JOIN categorie AS c ON c.id = b.categorie");
while ($arr = mysql_fetch_array($res, MYSQL_BOTH)){
{
echo $arr[titel].' ';
echo action($arr[id],$news_bewerken,$news_bewerken_knop,"Weet je zeker dat je dit bericht wilt bewerken?").'';
echo action($arr[id],$news_verwijderen,$news_verwijderen_knop,"Weet je zeker dat je dit bericht wilt verwijderen?").'<br>';
echo 'Categorie: '.$arr[categorie].'<br>';
echo substr($arr[content], 0, 20)' ';
echo '<a href=?p='.$news_tonen.'&id='.$arr[id].'>'.$read_more.'</a><br>';
echo '<br><br>';
}
}
mysql_free_result($res);
?>
include('db_config.php');
include('data.php');
$id = $_GET['id'];
$res = mysql_query("SELECT b.id, b.titel, b.content, c.categorie FROM bericht AS b INNER JOIN categorie AS c ON c.id = b.categorie");
while ($arr = mysql_fetch_array($res, MYSQL_BOTH)){
{
echo $arr[titel].' ';
echo action($arr[id],$news_bewerken,$news_bewerken_knop,"Weet je zeker dat je dit bericht wilt bewerken?").'';
echo action($arr[id],$news_verwijderen,$news_verwijderen_knop,"Weet je zeker dat je dit bericht wilt verwijderen?").'<br>';
echo 'Categorie: '.$arr[categorie].'<br>';
echo substr($arr[content], 0, 20)' ';
echo '<a href=?p='.$news_tonen.'&id='.$arr[id].'>'.$read_more.'</a><br>';
echo '<br><br>';
}
}
mysql_free_result($res);
?>
Ik wil de $arr[content] laten verkleinen naar bijvoorbeeld 30 tekens. Hoe doe ik dat? Met substring toch? Kom er niet helemaal uit. Iemand een idee / oplossing?
Dank!
Gewijzigd op 01/01/1970 01:00:00 door Zelf Weten
In jouw code zit trouwens de fout dat er geen puntje staat na de substr() functie. Ik zou ook de velden tussen aanhalingstekens zetten. Ziet er wat overzichtelijker uit (vind ik dan....).
EDIT: Je kunt alles lezen over op PHP.net: substr().
Gewijzigd op 01/01/1970 01:00:00 door Jesper Diovo
Maar vervolgens staat in je script
Wat overigens waarschijnlijk ook een error veroorzaakt?
Maar die zal hem vervolgens weer verkleinen naar 20.
Ahh logisch! Ik maakte hem alleen maar aan en ik echoode hem daarna niet meer. Dom van me. Tja, ach. 't Hoeft niet perse toch? Het werkt zo ook toch? Is het alleen netter met aanhalingstekens of ook beter? Dank!
hij doet het nu hoor. Ik heb het zo gedaan:
Code (php)
1
2
3
2
3
$content = substr($arr['content'], 0, 30);
echo $content .'... ';
echo '<a href=?p='.$news_tonen.'&id='.$arr[id].'>'.$read_more.'</a><br>';
echo $content .'... ';
echo '<a href=?p='.$news_tonen.'&id='.$arr[id].'>'.$read_more.'</a><br>';
Komen er ook netjes puntjes achter. Echter nu heb ik een probleempje... Ik JOIN namelijk de categorie uit tabel BERICHT met die van CATEGORIE. Maar nou wil ik van de categorie die getoond wordt, bijv. NIEUWS een link maken naar ?p=show&sort=1, waarbij 1 de CATEGORIE ID is van NIEUWS. Hoe krijg ik die nog terug? Want als ik echo $arr[categorie] doe print hij NIEUWS en niet meer 1.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
function getcategoryid($catname)
{
$sql = mysql_query("SELECT id FROM categorie WHERE naam = '".$catname."'");
if(mysql_num_rows($sql) >= 1) {
while($rij = mysql_fetch_assoc($sql)) {
return $rij['id'];
}
} else {
return 0;
}
}
echo "<a href='?p=news&sort=".getcategoryid($arr['categorie'])."'>".$arr['categorie']."</a>";
?>
function getcategoryid($catname)
{
$sql = mysql_query("SELECT id FROM categorie WHERE naam = '".$catname."'");
if(mysql_num_rows($sql) >= 1) {
while($rij = mysql_fetch_assoc($sql)) {
return $rij['id'];
}
} else {
return 0;
}
}
echo "<a href='?p=news&sort=".getcategoryid($arr['categorie'])."'>".$arr['categorie']."</a>";
?>
'k Weet overigens niet of dat de link is in dat geval, hoor, je ?p= is waarschijnlijk anders.
Gewijzigd op 01/01/1970 01:00:00 door Jesper Diovo
Klopt, die is inderdaad anders. Maar ik ga het even proberen. Dank voor je stuk script.
Hij doet het. Maar hoe zorg ik er nu dan voor dat louter berichten uit categorie 1 worden getoond als sort=1 is? Met SELECT bericht SORT BY categorie = 1? Zoiest dergelijks toch?