url verwijderen
Ik heb een variabele ($afbeeldingen) waarin alle linkjes naar afbeeldingen staan, gescheiden door een - :
images/0.jpg-images/1.jpg-images/2.jpg-
Nu heb ik de volgende code om ze te scheiden:
Met een for geef ik ze stuk voor stuk weer.
Nu mijn vraag: Hoe kan ik nu één linkje heel gemakkelijk uit die $afbeeldingen halen?
P.S. Ik ben een echte beginner dus niet al te ingewikkeld en/of zonder uitleg aub
BVD Niek
Je kan een bepaalde link aanroepen met behulp van bijvoorbeeld $afbeeldingen[3].
Ja dat snap ik, maar hoe haal ik er een bepaalde url tussenuit... Bijv $afbeeldigen[3]?
je kunt door je array heen loopen en zoeken met strpos/stripos op het woord .jpg o.i.d dan weet je welke array je afbeelding bevat.
Edit:
Overigens, een array begint vanaf 0 met tellen, dus jij hebt iets als:
array (
0 => link 1,
1 => link 2,
2 => link 3,
3 => link 4,
4 => link 5,
5 => link 6
)
Als je nu de 4e link weghaalt met unset($afbeeldingen[3]);, gaat de telling van de array gewoon door (van 2 naar 4, en niet van 2 naar 3):
array (
0 => link 1,
1 => link 2,
2 => link 3,
4 => link 5,
5 => link 6
)
Gewijzigd op 01/01/1970 01:00:00 door Winston Smith
Ik krijg het idee dat ik het probleem niet helemaal goed uitgelegd heb...
Ik heb dus een array met een stuk of acht afbeeldingen... Die kan ik zonder problemen oproepen met $afbeeldingen[3] oid... Maar nu is mijn vraag: hoe kan ik bijvoorbeeld $afbeeldingen[5] (5 moet variabel zijn) tussen de rest uithalen. De rest moet dus gewoon blijven staan...
Gewijzigd op 01/01/1970 01:00:00 door Niek van Milligen
Hoe zet ik dat in een link?
code:
echo "<a href=\"#\">VERWIJDER</a>";
Waat haal je de 5 vandaan? geeft iemand je die 5? input? wat?
Ja: Ik geef ze allemaal weer en dan is het de bedoeling dat er overal een link naast komt te staan (VERWIJDER) waarop ze klikken kunnen zodat hij verwijderd word.
Gewijzigd op 01/01/1970 01:00:00 door Niek van Milligen
en op delete.php:
Uiteraard zal je met bovenstaande een error krijgen ($afbeeldingen is bijvoorbeeld niet bekend) en is het zeer onveilig (je moet o.a. controleren op rechten en of id wel een integer is), maar zo zou de basis eruit kunnen zien.
Kasper schreef op 17.02.2009 10:50:
unset($afbeeldingen[3]);
Edit:
Overigens, een array begint vanaf 0 met tellen, dus jij hebt iets als:
array (
0 => link 1,
1 => link 2,
2 => link 3,
3 => link 4,
4 => link 5,
5 => link 6
)
Als je nu de 4e link weghaalt met unset($afbeeldingen[3]);, gaat de telling van de array gewoon door (van 2 naar 4, en niet van 2 naar 3):
array (
0 => link 1,
1 => link 2,
2 => link 3,
4 => link 5,
5 => link 6
)
Edit:
Overigens, een array begint vanaf 0 met tellen, dus jij hebt iets als:
array (
0 => link 1,
1 => link 2,
2 => link 3,
3 => link 4,
4 => link 5,
5 => link 6
)
Als je nu de 4e link weghaalt met unset($afbeeldingen[3]);, gaat de telling van de array gewoon door (van 2 naar 4, en niet van 2 naar 3):
array (
0 => link 1,
1 => link 2,
2 => link 3,
4 => link 5,
5 => link 6
)
Klopt maar dan kan ik denk ik wel dmv de pagina herladen of zoiets de boel weer een goed cijfer geven
Bedankt ga hem proberen!
Code (php)
en dan in delete.php wel:
Ik heb dat van Kasper toegepast, maar ik krijg steeds de volgende error:
Notice: Undefined variable: afbeeldingen in C:\wamp\www\NvM Webdesign\del_afb_home.php on line 45
Code (verwijder.php):
Code (php)
en verwerk.php:
Code (php)
Gewijzigd op 01/01/1970 01:00:00 door Niek van Milligen
Quote:
Uiteraard zal je met bovenstaande een error krijgen ($afbeeldingen is bijvoorbeeld niet bekend) (...)
Dus je moet of de hele array meegeven naar verwerk.php, of je moet het verwijderen doen op de pagina verwijder.php zelf (overigens een onlogische naam, omdat op die pagina niet het verwijderen plaatsvindt).
Fatal error: Cannot unset string offsets in C:\wamp\www\NvM Webdesign\del_afb_home.php on line 54
codes delete.php:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
include('verbinden.php');
$sql="SELECT afbeeldingen FROM content_home";
$resultaat=mysql_query($sql)or die(mysql_error());
while($rij=mysql_fetch_array($resultaat)){
$afbeeldingen=$rij['afbeeldingen'];
$afbeelding = explode("-", $afbeeldingen);
$aantal=count($afbeelding)-1;
if(!isset($_GET['id']))
{
echo 'Dit kan niet, ga terug waar je vandaan kwam';
}
else
{
$id=$_GET['id'];
unset($afbeeldingen[$id]);
echo "<br><h2>Verwijderd</h2>";
echo "<br><a href=\"verwijder.php\">Ga terug</a>";
}
}
mysql_close();
?>
include('verbinden.php');
$sql="SELECT afbeeldingen FROM content_home";
$resultaat=mysql_query($sql)or die(mysql_error());
while($rij=mysql_fetch_array($resultaat)){
$afbeeldingen=$rij['afbeeldingen'];
$afbeelding = explode("-", $afbeeldingen);
$aantal=count($afbeelding)-1;
if(!isset($_GET['id']))
{
echo 'Dit kan niet, ga terug waar je vandaan kwam';
}
else
{
$id=$_GET['id'];
unset($afbeeldingen[$id]);
echo "<br><h2>Verwijderd</h2>";
echo "<br><a href=\"verwijder.php\">Ga terug</a>";
}
}
mysql_close();
?>
en verwijder.php:
Code (php)
Gewijzigd op 01/01/1970 01:00:00 door Niek van Milligen
Maar aangezien het een array is kun je ook gebruiken denk ik(not sure)
Gewijzigd op 01/01/1970 01:00:00 door Timen kut
unlink is toch voor het verwijderen van bestanden uit de directory?
array_splice zou inderdaad ook kunnen. unset ook. unlink niet, dat is inderdaad voor het verwijderen van bestanden.