login  Naam:   Wachtwoord: 
Registreer je!
 Forum

select list

Offline Ultimatum - 27/01/2006 19:49
Avatar van UltimatumPHP expert heb nu voor mijn warning script een select list ingevoegd zoals hieronder
  1. <select size="1" name="warnings">
  2. <option value="1">Warning +1</option>
  3. <option value="2">Warning -1</option>
  4. </select>


aleen nu wil ik als je optie 1 hebt gekozen de warnings +1 gaat en anders -1, maar hoe zet ik dat nou neer 

13 antwoorden

Gesponsorde links
Offline BigBug - 27/01/2006 19:51
Avatar van BigBug PHP expert
  1. <?php
  2. if($_POST['warnings'] == '1')
  3. {
  4. echo '+1';
  5. }
  6. else
  7. {
  8. echo '-1';
  9. }
  10. ?>
Maarja, je moet met je Sql coe doe boel ophalen van een bepaald id en deze updaten...
Offline timo - 27/01/2006 19:53 (laatste wijziging 27/01/2006 19:54)
Avatar van timo PHP ver gevorderde hoe bedoel je precies? dus als je dan op submit drukt dat er dan een string met 1 verhoogd word?
in dat geval:
  1. <?php
  2. $warnings = "0";
  3. if(isset($_POST['warnings']))
  4. {
  5. if($_POST['warnings'] =="1") {
  6. $warnings++;
  7. echo $warnings;
  8. }
  9. elseif($_POST['warnings'] =="2") {
  10. $warnings--;
  11. echo $warnings;
  12. }
  13. }
  14. ?>
Offline Ultimatum - 27/01/2006 19:56 (laatste wijziging 27/01/2006 19:56)
Avatar van Ultimatum PHP expert nee kijke iemand heeft al 1 warning en ik ga naar zijn profiel en in dat drop down menu kies ik optie 1, dus dat het aantal +1 moet alleen hoe krijg ik voor elkaar dat optie 1 ook daadwerkelijke met 1 is verhogen en 2 verlagen?

edit, had code van timo niet goed gelezen , ik zal dat wel even proberen 
Offline timo - 27/01/2006 19:57 (laatste wijziging 27/01/2006 19:57)
Avatar van timo PHP ver gevorderde 2 posts up als je dat dan in tabel wil doen moet je iets doen van:
  1. <?
  2. mysql_query("UPDATE {tabelnaam} SET warnings='".$warnings."' WHERE user_id={userid?}");
  3. ?>
Offline Ultimatum - 27/01/2006 20:19 (laatste wijziging 27/01/2006 22:20)
Avatar van Ultimatum PHP expert oke, het werkt nu half 

heb nu dit
  1. <?php
  2. if($_POST['warnings'] =="1") {
  3. $warnings = $admin['warning'];
  4. $warnings++;
  5. }elseif($_POST['warnings'] =="2") {
  6. $warnings = $admin['warning'];
  7. $warnings--;
  8. }
  9. ?>


dit is voor updaten
  1. <?php
  2. if($admin['warning'] == 3) {
  3.  
  4. echo "<tr><td colspan='2'>$_GET[user]'s profile has been updated<br />This account has been banned</td></tr>";
  5.  
  6. $update = mysql_query("UPDATE users set rank = '0', subtitle = '$subtitle', msn = '$msn',
  7. email = '$email', homepage = '$homepage', location = '$location', warning = '$warnings' WHERE username = '".$_GET['user']."'");
  8. }else{
  9.  
  10. echo "<tr><td colspan='2'>$_GET[user]'s profile has been updated</td></tr>";
  11. $update = mysql_query("UPDATE users set rank = '$rank', subtitle = '$subtitle', msn = '$msn',
  12. email = '$email', homepage = '$homepage', location = '$location', warning = '$warnings' WHERE username = '".$_GET['user']."'");
  13. }
  14. ?>


alleen als er 0 staat update hij goed naar 1, maar van 1 naar 2 warnings doet hij niet en als ik van 1 naar 0 doe dan komt er helemaal niks te staan terwijl de default van mijn kolom wel op 0 staat (hij update dus wel terug )

samenvatting
hij update van 0 naar 1 en van 1 naar 0 maar niet van 1 naar 2 (warnings)
Offline Thomas - 27/01/2006 22:33
Avatar van Thomas Moderator Waarom laat je de values niet gewoon de waarden zijn van welke kant het op moet met die warnings?
Maak de value van de +1-warning 1, en de -1-warning -1?

Let er wel op dat alles wat uit $_POST en $_GET komt een string is en vervalst kan worden (mysql-inserts) als je code niet goed in elkaar zit.
Offline Ultimatum - 28/01/2006 12:58
Avatar van Ultimatum PHP expert begrijp je niet helemaal 
Offline xSc - 28/01/2006 13:25
Avatar van xSc Onbekend Hallo, cijfers buiten quotes!

Niet == "2" maar == 2

Ultimatum, kijk alsjeblieft je code eens na. Fouten maken mag, maar lees eerst eens wat over quotes:

- Variabelen buiten quotes.
- Associatieve keys tussen quotes: $_GET['bla'], maar $aMijnArray[1]
- Zorg voor goede foutafhandeling

Opmerking: waarom is alles in het Engels? We leven in Nederland, hoor ;)
Offline Ultimatum - 28/01/2006 14:53
Avatar van Ultimatum PHP expert Henri, zeur niet zo, mss is het een internationale site enne als je niks zinnigs over mijn fout te zeggen hebt, hou je er dan gewoon buiten

iemand die het wel weet?
Offline Dolfje - 28/01/2006 17:06 (laatste wijziging 28/01/2006 17:07)
Avatar van Dolfje Gouden medailleGouden medailleGouden medaille

PHP ver gevorderde
Bij mysql-update moet je de waarden die niet veranderen niet meesturen:
PHP.net:
<....
?>


Maar ik vind geen fout,
verander dat laatste eens in:
  1. <?
  2. echo $warnings;
  3. exit();
  4. ?>

en kijk als hij het juiste getal meekrijgt.
(ik denk dat er iets fout is buiten de scriptjes dat je gegeven hebt)
(dit bovenste is dus geen oplossing, alleen een testje voor te weten waaraan het kan liggen)
Offline Ultimatum - 28/01/2006 17:08
Avatar van Ultimatum PHP expert alleen alles update wel want het is een admin panel zo de admins kunnen dingen veranderen en moeten dus wel geupdate kunnen worden

ik zal het zo wel even proberen 
Offline Dolfje - 28/01/2006 17:18
Avatar van Dolfje Gouden medailleGouden medailleGouden medaille

PHP ver gevorderde
Dan zwijg ik over m'n eerste puntje 
Offline Rens - 28/01/2006 17:27
Avatar van Rens Gouden medaille

Crew algemeen
Probeer het eens met deze tutorial.
En dan het stukje helemaal onderaan: 3. Getallen verhogen

Daarmee word uitgelegd hoe je een getal kunt verhogen, maar door de + in een - te veranderen, kun je een getal ook verlagen.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.272s