ErikBooy007
Terugkerende gebruiker
- Lid geworden
- 24 mei 2007
- Berichten
- 3.814
Ik ben met een projectje voor school bezig, waar ik een systeem maak om je gehaalde cijfers te beheren.
Nu heb ik dit als volgt gedaan. Alle cijfers komen in een array. Door implode(); te gebruiken, maak ik hier een string van en stop ik deze in de database.
Dan kan ik hem er weer uithalen en er weer een array van maken, zodat ik ermee kan werken en dergelijke en dat is allemaal geen enkel probleem.
En nu komt het probleem. Ik wil graag een waarde uit deze array kunnen verwijderen.
Ik heb daarvoor de volgende functie gebruikt:
Ik zal deze even verklaren:
$cijferArray is de array met alle cijfers van een bepaald type (so / pw / pta)
submitso / submitpw / submitpta zijn de namen van de submit buttons in het formulier waar je de cijfers om te verwijderen kunt kiezen.
$number is de key van de waarde in de array.
Wat is nu het probleem? Het werkt niet zoals ik wil. Er komen allerlei lege waardes in de array terecht en er staan overal nog komma's die nog weg moeten.
Kan iemand me helpen? Doe ik veel te moelijk om een waarde uit de array te verwijderen? Bestaat daar ook een ingebouwde functie voor?
Alvast bedankt!!
Nu heb ik dit als volgt gedaan. Alle cijfers komen in een array. Door implode(); te gebruiken, maak ik hier een string van en stop ik deze in de database.
Dan kan ik hem er weer uithalen en er weer een array van maken, zodat ik ermee kan werken en dergelijke en dat is allemaal geen enkel probleem.
En nu komt het probleem. Ik wil graag een waarde uit deze array kunnen verwijderen.
Ik heb daarvoor de volgende functie gebruikt:
PHP:
global $connection;
$sql = "SELECT * FROM `cijfers` WHERE `vak`='" . $vak . "'";
$result = mysql_query($sql, $connection);
$row = mysql_fetch_array($result, MYSQL_BOTH);
$cijfers = $row[$type];
$cijferArray = explode(',', $cijfers);
if(isset($_POST['submitso'])){
$number = $_POST['so'];
} elseif (isset($_POST['submitpw'])){
$number = $_POST['pw'];
} else {
$number = $_POST['pta'];
}
$arrayLength = count($cijferArray);
for($i = $number - 1; $i < $arrayLength; $i++){
$j = $i + 1;
$cijferArray[$i] = $cijferArray[$j];
}
$cijferString = implode(',', $cijferArray);
$sql2 = "UPDATE `cijfers` SET so='" . $cijferString . "' WHERE vak='" . $vak . "'";
echo $sql2;
mysql_query($sql2, $connection) or die(mysql_error());
Ik zal deze even verklaren:
$cijferArray is de array met alle cijfers van een bepaald type (so / pw / pta)
submitso / submitpw / submitpta zijn de namen van de submit buttons in het formulier waar je de cijfers om te verwijderen kunt kiezen.
$number is de key van de waarde in de array.
Wat is nu het probleem? Het werkt niet zoals ik wil. Er komen allerlei lege waardes in de array terecht en er staan overal nog komma's die nog weg moeten.
Kan iemand me helpen? Doe ik veel te moelijk om een waarde uit de array te verwijderen? Bestaat daar ook een ingebouwde functie voor?
Alvast bedankt!!