Algemeen forum ontrent de ontwikkelng, design en hosting van weergerelateerde websites (dit laatste om een beetje on topic te blijven)
Door Snarf2000
#55721
En daar ben ik al de hele dag mee bezig.

Zou iemand voor mij het bijgevoegde script willen aanpassen zodat hij wel wil wegschrijven naar de MySql database?

Ik zit in een "writersblock" :angry:

Hij leest en connect goed.
een pagina staat hier:
http://testdomein.meteonoordwest.nl/prijsvraag/epv.php

als je mee hebt gedaan aan de prijsvraag, wordt dit het script om de data aan te passen wanneer je je bedenkt (op verzoek SpeedyGJ)

Ik wil hier best aan voldoen, maar nu nog dat ene kleine stukje (zoals zo vaak)

Bvd, Frans
Bijlagen
(975 Bytes) 188 keer gedownload
Door Adriaan
#55722
Hoi Frans,

Heb eens even naar het scriptje gekeken.
Ten eerste weet ik niet exact hoe je database layout er uit ziet, maar ik zie dat je op basis van IP adres de naam ophaalt en bepaald welke gegevens worden geupdate. Op zich niets mis mee, maar als ik bijvoorbeeld op school zit eerst, en later thuis, dan zal mijn IP adres verschillen (en je kan meerdere gebruikers onder één extern IP hebben).

Verder heb ik wel sowieso een kritiek probleempje gevonden in het script. Je maakt gebruik van POST variabelen in de query. Maar deze POST variabelen zullen altijd leeg zijn omdat je in het HTML gedeelte onderaan bij "
" geen "action" attribuut meegeeft. En de standaard "action" van een form is als ik het goed heb om de variabelen te "Getten" in plaats van te "Posten".

Dus de oplossing is hopelijk om van "" het volgende te maken:

Code: Selecteer alles
<form action="POST">


Laat me maar weten of dat het was!

Mvg,
Adriaan.
Door Snarf2000
#55723
Bij het eerste script kreeg ik ik de adresregel te zien:
Code: Selecteer alles
http://testdomein.meteonoordwest.nl/prijsvraag/epv.php?tmax=101&tmin=1&neerslag=85&submit=Submit


Na de tip van jou adriaan door van mijn te maken, krijg ik in de adresregel:
Code: Selecteer alles
http://testdomein.meteonoordwest.nl/prijsvraag/POST?tmax=100&tmin=11&neerslag=851&submit=Submit


en op de pagina staat nu:

Not Found

The requested URL /prijsvraag/POST was not found on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

Het is er niet beter op geworden

grt Frans
Door Adriaan
#55726
Eerste wat ik nu zou doen is het volgende.

Code: Selecteer alles
$tmax = $_POST['tmax'];
$tmin = $_POST['tmin'];
$neerslag = $_POST['neerslag'];

echo "Tmax: " . $tmax . " Tmin: " . $tmin . " Neerslag: " . $neerslag;


Dan weet je in ieder geval zeker dat de variabelen goed worden gevuld.
Dan komt de query er dus zo uit te zien:

Code: Selecteer alles
$query = ("UPDATE pv2014 SET tmax='".$tmax."',tmin='".$tmin."', neerslag='".$neerslag"' WHERE ip='$ip'");
$sql = mysql_query($query);


Ik heb namelijk ook zo'n onderbuikgevoel dat POST variabelen niet rechtstreeks in de query altijd goed gaan, dus vandaar eerst kopieren naar een nieuwe lokale variabele want dat kán simpelweg niet fout gaan.

Als je inderdaad nu de variabelen ziet uitgeprint worden op je pagina, en dat dus goed gaat.. kan het alleen nog een fout zijn in de query zelf mocht het nog steeds niet werken.
Door Snarf2000
#55733
Vanmorgen het eindelijk voor elkaar gekregen om succesvol terug naar de database te schrijven.

Geen idee wat ik allemaal gewijzigd heb, maar de final textfile staat hier als bijlage.

Nu kan een ieder die mee gedaan heeft aan de prijsvraag zijn eigen gegevens wijzigen.
Tenminste, vanaf het zelfde ip adres.
Er zijn vast nog een aantal die dagelijks een nieuw ip adres krijgen.
Deze mensen moeten dan maar een mail schrijven :(

Bedankt voor het mee helpen.

Grt Frans
Bijlagen
(1.54 KiB) 232 keer gedownload