gegevensinvoer succes of mislukt

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Roberto Beer

Roberto Beer

15/03/2007 19:10:00
Quote Anchor link
Hallo allemaal,

Ik ben een cms aan het maken, en een belangrijk deel vind ik de gebruikersvriendelijkheid. Omdat dit mijn eerste cms ooit wordt, ken ik nog niet zoveel truukjes.

Ik heb een pagina waarop de gebruiker een foto-album aan kan maken. De gebruiker hoeft maar 2 dingen in te vullen: titel en omschrijving. Als de gebruiker op "aanmaken" heeft geklikt, gaat ie checken of beide veldjes wel zijn ingevuld (wat verplicht is). zoja, dan zet ie de gegevens in de tabel "fotoalbums" en geeft ie een mededeling dat het gelukt is, zo niet dan geeft het enkel een mededeling "beide velden aub invullen!" en blijft de gebruiker op dezelfde pagina.

Nu zou ik graag willen dat mijn systeem de gebruiker meteen naar de pagina brengt die voor het nieuwe album is aangemaakt (zeg maar fotoalbum.php?view=laatst_aangemaakte_id). Op die pagina kan ie ook meteen de gewenste foto's aan het album toevoegen. Nu is het nog zo dat je op dezelfde pagina een mededeling krijgt, en moet je zelf via het overzicht, naar het nieuwste album. Dat kan vast een stuk gemakkelijker?
 
PHP hulp

PHP hulp

24/11/2024 07:33:05
 
Joren de Wit

Joren de Wit

15/03/2007 19:18:00
Quote Anchor link
Jep, nadat je gecontroleerd hebt of de INSERT query van je album succesvol was, kun je met mysql_insert_id() het id van de laatste INSERT query ophalen. Dit id kun je dan gebruiken in een header() functie om de gebruiker door te sturen naar de volgende pagina:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
if($res = mysql_query($sql))
{

    $id = mysql_insert_id();
    header('Location: fotoalbum.php?view='.$id);
}

?>
 
Roberto Beer

Roberto Beer

15/03/2007 19:47:00
Quote Anchor link
Harstikke bedankt. Ik had het tijdelijk met een Javascript redirect, maar uiteindelijk is het wel zo handig om zo veel mogelijk in PHP te schrijven natuurlijk.

Nu krijg ik echter nog 'headers already sent'. Ik zal vast iets boven aan de pagina moeten zetten ofzo, net als session_start(), volgens mij kreeg ik toen dezelfde melding (weet ik niet zeker)
 
Joren de Wit

Joren de Wit

15/03/2007 20:13:00
Quote Anchor link
Voor functies als header(), session_start() en setcookie() mag je absoluut nog geen output naar de browser verstuurd hebben. Dus geen echo's, geen html en zelfs geen loze spatie aan het begin van je pagina.

Dus waarschijnlijk is het even een kwestie van herschikken van je script: eerst de logica en dan de output.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.