$_POST of $_GET??
view_news.php
edit_news.php
add_news.php
add_news.php voegt een nieuws-item toe in mijn news_tabel in een mysql-db
view_news.php geeft een lijst terug van alle news_items die in de news_tabel toegevoegd zijn. Naast elk zo een item staat een link naar de edit_news.php als volgt <a href="edit_news.php?news_id={$record['id']}"></a>
Dit brengt me naar de edit_news.php pagina alwaar het juiste news_item aan de hand van de id wordt ingeladen. Als ik nu dit news_item editeer, hoe krijg ik dit dan terug naar mijn database gezonden?
POST kan ik immers niet meer gebruiken want ik gebruik GET al om de id uit de url te halen.
Ik ben redelijk nieuw in php dus ik zit met mijn handen in het haar... kan iemand me helpen?
dank bij voorbaat!
Je moet alleen uitkijken als je dezelfde parameternaam gebruikt. Als je bijvoorbeeld news_id in zowel je GET als je POST gebruikt, zal maar een van de twee worden verwerkt (welke dat is, hangt af van de instellingen van PHP).
Gewijzigd op 01/01/1970 01:00:00 door Willem vp
ok, dan was ik toch in de goeie richting bezig...
maar hoe los ik hetvolgende dan op^:
"Firefox has detected that the server is redirecting the request for this address in a way that will never complete."
(dit gebeurt na dat ik op mijn submit-button geduwd heb)
Gewijzigd op 01/01/1970 01:00:00 door Filip
Moeilijk te zeggen zonder codevoorbeeld. Het lijkt op een eindeloze loop.
Maar dit wordt mijn laatste post van vandaag. Ik ga nu lekker dromen over mooie source codes. Maar misschien kan Jan je verder helpen?
Speak of the devil... ;-)
offtopic: slaap lekker, Willem :-)
if(!isset($_GET['news_id']))
{
header("Location: edit_news.php");
}
else
{
$news_id = (int)$_GET['news_id'];
}
gaf dus die fout...
aangepast naar:
if(!isset($_GET['news_id']))
{
if (!isset($_POST['verzonden']))
{
header("Location: view_news.php");
}
}
else
{
$news_id = (int)$_GET['news_id'];
}
later in mijn code doe ik dan nog een check:
if (isset($_POST['verzonden'])
{
//voer mijn updates uit
}
else
{
//haal gegevens uit de db om te tonen op het scherm zodat ze daarna ge-editeerd kunnen worden
}
ik doe waarschijnlijk best een redirect naar mijn view_news pagina na het einde van mijn updates?
zal ik me andere moeite mee besparen?
Warning: Cannot modify header information - headers already sent by ...
terug naar het tekenbord :D
Kijk even bij de FAQ. Headers already sent is een veel voorkomende vraag.
redirect bekijk ik later nog wel es :)
toch bedankt :)
if(!isset($_GET['news_id']))
{
header("Location: edit_news.php");
}
Staat dit in edit_news.php zelf? Zo ja, dan zal dat misschien je oneindige loop zijn, je komt op edit_news.php, news_id is er niet, en je gaat weer terug naar de pagina. Dan is news_id er nog steeds niet uiteraard...
heb hem aangepast en nu gaat ie wel goed ;-)