login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Plaatjes naast elkaar

Offline rpgnox - 03/07/2010 18:20
Avatar van rpgnoxPHP interesse Ik heb

  1. <DIV ID="buttonsbox">
  2.  
  3. <?php for ($i = 1; $i <= 3; $i++) {
  4. echo '<form method="POST"><input type="hidden" name="item" id="sel" value="color'.$i.'">
  5. <input type="image" name="item" src="images/character/buttons/1_'.$i.'.png" alt="Submit button"></form> '; } ?>
  6. </DIV>


alleen nu worden alle afbeeldingen onder elkaar gezet en het is de bedoeling dat de afbeeldingen naast elkaar komen te staan (kortom, door de FORM post wordt er continu een enter veroorzaakt naar een volgende regel.

Hoe kan dit worden opgelost?

9 antwoorden

Gesponsorde links
Offline Koen - 03/07/2010 20:56
Avatar van Koen PHP expert style="display: inline;" ?
Offline WouterJ - 03/07/2010 22:51 (laatste wijziging 04/07/2010 12:33)
Avatar van WouterJ HTML gevorderde
  1. #buttonsbox img{
  2. float: left;
  3. }
?
Offline rpgnox - 03/07/2010 23:25
Avatar van rpgnox PHP interesse bedankt. Ik heb nu

  1. <DIV ID="buttonsbox" style="display: inline;">
  2.  
  3. <?php
  4.  
  5. for ($i = 1; $i <= 15; $i++) {
  6.  
  7. echo "<form method='POST'><input type='hidden' name='item' id='sel' value='color".$i."'>
  8. <input type='image' name='item' src='images/character/buttons/1_".$i.".png' alt='Submit button'></form> "; } ?>
  9.  
  10.  
  11. </DIV>


maar de afbeeldingen blijven nog steeds onder elkaar staan. Haal ik de <form method='POST'> weg dan staan ze onder elkaar maar werkt de post optie niet meer...
Offline Koen - 04/07/2010 00:14
Avatar van Koen PHP expert Die form display: inline geven hé, en anders wat Waldio zei.
Offline Jelmerholland - 04/07/2010 00:15
Avatar van Jelmerholland PHP beginner Werk eerst is met enters. Maak je code overzichtelijk.
  1. <DIV ID="buttonsbox" style="display: inline;">
  2.  
  3. <?php
  4.  
  5. //make 15 forms
  6. for ($i = 1; $i <= 15; $i++) {
  7.  
  8. //start form
  9. echo "<form method='POST'>";
  10. echo "<input type='hidden' name='item' id='sel' value='color" . $i . "'>";
  11. echo "<input type='image' name='item' src='images/character/buttons/1_" . $i . ".png' alt='Submit button'>";
  12. echo "</form> ";
  13.  
  14. }
  15.  
  16. ?>
  17.  
  18.  
  19. </DIV>


Dan nu.. je moet de input tag ook afsluiten dus <input></input> of <input />
En waarom doe je een plaatje als input en niet gewoon met de <img> tag? Wat is de bedoeling van je script?
Offline rpgnox - 04/07/2010 09:06
Avatar van rpgnox PHP interesse De bedoeling is een soort van avatar script te maken.

Vb. ik heb

  1. //Update Color
  2. if(isset($_POST['item'])){
  3. for ($i = 0; $i <= 100; $i++) {
  4. if($_POST['item'] == "color".$i){
  5. if($data->health > 0){ $error = 2; ?>
  6.  
  7. <?php mysql_query("UPDATE `users` SET `avatar_color`='".$i."' WHERE `login`='$data->login'"); }
  8. else{ $error = 1; }}}} else{ }


Nu update ik de db met dit stuk (heb het aangepast met /input maar het probleem blijft hetzelfde)

  1. <DIV ID="buttonsbox">
  2.  
  3.  
  4.  
  5. <table width="100%" border="0">
  6. <tr>
  7.  
  8. <?php
  9.  
  10. //make 15 forms
  11. for ($i = 1; $i <= 15; $i++) {
  12.  
  13. //start form
  14. echo "<td width=\"100\"><form method='POST'>";
  15. echo "<input type='hidden' name='item' id='sel' value='color" . $i . "'>";
  16. echo "<input type='image' name='item' src='images/character/buttons/1_" . $i . ".png' alt='Submit button'>";
  17. echo "</input></input></form></td> ";
  18.  
  19. }
  20.  
  21. ?>
  22.  
  23. &nbsp;</td>
  24.  
  25. </tr>
  26. </table>


Als ik nu op een plaatje druk dan wordt de kleur van het poppetje veranderd. Maar zou een img tag dan beter zijn? En hoe zou dit moeten? Zou je wellicht een voorbeeldje kunnen posten...
Offline Jelmerholland - 04/07/2010 14:19 (laatste wijziging 04/07/2010 14:19)
Avatar van Jelmerholland PHP beginner Ik snap 't niet helemaal meer.. jij wilt dus een heleboel plaatjes naast elkaar. Als je op zo'n plaatje klikt, dan submit je dat formulier waardoor je kleur veranderd (Van je avatar) Correct?

Jij wilt, als je op het plaatje klikt, dat de kleur veranderd.

Je maakt per plaatje een appart formulier aan.
Je zet elke form (dus plaatje) in een table. In één kolom. De width is 100, dus je kan er (uitgaande van 1000px breedte, 10 kwijt.

Heb je een online voorbeeld?

Wat je kan proberen:
- <tr> een width meegeven
- <td> width meegeven, dus even 'px' achter je 100 zetten.
- input NOOIT nesten in een <input> (wat je nu doet, want je image is nu genest in de hidden.
- niet in een tabel zetten, maar in een <div> Dus per <form> in 1 div, die 15 divjes, geef je een width van 50px meeofzo, en je zet ze allemaal op float:left
- werkt 't nou nog niet? validator.w3.org
Offline Martijn - 05/07/2010 12:59
Avatar van Martijn Crew PHP t is trouwens niet t plaatje waardoor het onder elkaar gaat staan, maar de form die dat doet. Die wil (ook) een inline/float:left
Offline Maarten - 05/07/2010 14:33 (laatste wijziging 05/07/2010 14:34)
Avatar van Maarten Erelid Waarom zou je trouwens per afbeelding een aparte form maken? Waarom niet gewoon
1) Afbeeldingen met een radiobutton en 1 submitknop
2) Gewoon klikbare afbeeldingen, die bv. verwijzen naar /setAvatar.php?avatar=NAAM_VAN_AFBEELDING en waar dan de afbeelding wordt ingesteld?

Niet dat het niet zou werken op die manier, maar ik vind het zo stom om 100 formulieren op een pagina te gooien, dat klinkt gewoon niet logisch 
Bij een formulier heb ik de redenering
---- FORM -----------------------
- Een vraag
-- De mogelijke antwoorden
----------------------------------
Je weet wel 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.24s