email form met image als submit button

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Frank

frank

06/02/2007 18:50:00
Quote Anchor link
Hoi phpers,

ik heb een probleempje waar ik niet uit kom (volgens mij moet de oplossing niet heel moeilijk zijn...)
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?
echo "<table border=\"0\">";
echo "<tr> ";
echo "<td width=\"120\">naam</td>";
echo "<td><input type=\"text\" name=\"naam\" size=\"25\" value=\"" . $_POST['naam'] . "\"></td>";
echo "<td rowspan=\"2\"><input type=\"image\" src=\"img/button mail-verzenden.JPG\" name=\"submit\" value=\"zend\"></td>";
echo "</tr>";
echo "<tr> ";
echo "<td>email adres</td>";
echo "<td><input type=\"text\" name=\"mail\" size=\"25\" value=\"" . $_POST['mail'] . "\"></td>";
echo "</tr>";
echo "</table>";
echo "<table border=\"0\">";
echo "<tr>";
echo "<td width=\"120\">bericht</td>";
echo "<td><textarea name=\"msggs\" rows=\"12\" cols=\"26\" value=\"" . $_POST['msggs'] . "\"></textarea></td>";
echo "</tr>";
echo "</table>";
?>


zoals je kan zien wil ik voor het de verzendknop een image gebruiken. Dit script werkt wel wanneer ik een normale type=submit gebruik ipv image...
Heeft iemand een idee waarom het niet werkt?
 
PHP hulp

PHP hulp

07/11/2024 21:54:11
 
Tim

Tim

31/03/2007 14:55:00
Quote Anchor link
Dit komt waarschijnlijk omdat je probeert te kijken of:

$_POST["submit"] == "zend"

Echter, dit is niet wat je terugkrijgt bij het gebruik van plaatjeslinks. Je krijgt de plek terug waarop de gebruiker geklikt heeft, bijvoorbeeld op de volgende manier:

$_POST["submit_x"] = 10;
$_POST["submit_y"] = 5;

Dus je kunt gewoon controleren of je een getal terugkrijgt:

if (is_numeric($_POST["submit_x"].$_POST["submit_y"])) {
// verzend
}

Succes ermee!
Gewijzigd op 01/01/1970 01:00:00 door Tim
 
Thijs X

Thijs X

31/03/2007 15:03:00
Quote Anchor link
Controleren of er op het plaatje is gedrukt dmv:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?
if($_SERVER['REQUEST_METHOD'] == "POST")
{

  // Hier je script
}
?>
 
GaMer B

GaMer B

31/03/2007 15:06:00
Quote Anchor link
Òf je gebruikt CSS en je plakt daarmee het plaatje op een button :P
 
Bart van der veen

bart van der veen

31/03/2007 15:14:00
Quote Anchor link
GaMer13 schreef op 31.03.2007 15:06:
Òf je gebruikt CSS en je plakt daarmee het plaatje op een button :P


meestal niet de beste oplossing
 
GaMer B

GaMer B

31/03/2007 15:30:00
Quote Anchor link
In een CSS bestandje:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
input.submit{
background: #50708e url(images/button_bg.gif) repeat-x;
color: #FFFFFF;
border: solid 1px #000000;
}

En je formulier:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<input class="submit" type="submit" name="submit" value="Verzenden" />


Dit werkt vlekkeloos.
 
Leroy Boerefijn

Leroy Boerefijn

31/03/2007 17:49:00
Quote Anchor link
je kan ook een onclick toevoegen:
onclick="document.formname.Submit()"
;)
 
Jan Koehoorn

Jan Koehoorn

31/03/2007 17:54:00
Quote Anchor link
In een formulier heeft een input type image automatisch dezelfde functie als een input type submit. Je hoeft dus geen extra scripts te maken om het formulier te verzenden. Gewoon dit is voldoende:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
    <input type="image" src="verzend.gif">

Je moet dan wel op deze manier controleren of je form verzonden is:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
    if ($_SERVER['REQUEST_METHOD'] == 'POST') {
        // doe iets met de waarden uit het formulier
    }
?>
 
Baarr

Baarr

31/03/2007 17:57:00
Quote Anchor link
Alsjeblieft ... doe het nou niet zo , doe het zo

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
echo '<table border="0">';
echo '<tr> ';
echo '<td width="120">naam</td>';
echo '<td><input type="text" name="naam" size="25" value="' . $_POST['naam'] . '"></td>';
echo '<td rowspan="2"><input type="image" src="img/button mail-verzenden.JPG" name="submit" value="zend"></td>';
echo '</tr>';
echo '<tr> ';
echo '<td>email adres</td>';
echo '<td><input type="text" name="mail" size="25" value="' . $_POST['mail'] . '"></td>';
echo '</tr>';
echo '</table>';
echo '<table border="0">';
echo '<tr>';
echo '<td width="120">bericht</td>';
echo '<td><textarea name="msggs" rows="12" cols="26" value="' . $_POST['msggs'] . '"></textarea></td>';
echo '</tr>';
echo '</table>';
?>



of nog beter zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<table border="0">
    <tr>
        <td width="120">naam</td>
        <td><input type="text" name="naam" size="25" value="<?php echo $_POST['naam']; ?>"></td>
        <td rowspan="2"><input type="image" src="img/button mail-verzenden.JPG" name="submit" value="zend"></td>
    </tr>
    <tr>
        <td>email adres</td>
        <td><input type="text" name="mail" size="25" value="<?php echo $_POST['mail']; ?>"></td>
    </tr>
</table>
<table border="0">
    <tr>
        <td width="120">bericht</td>
        <td><textarea name="msggs" rows="12" cols="26" value="<?php echo $_POST['msggs']; ?>"></textarea></td>
    </tr>
</table>


Al die fokking dubbele quotes daarboven, en dan weer met backslashes quotes escapen om er 1 te plaatsen.. Zo onleesbaar als de ..

Tevens is text outputten met dubbele quotes trager dan met single quotes.

(ik heb overigens niet naar het issue van dit topic gekeken dus 100% offtopic ;-) )
Gewijzigd op 01/01/1970 01:00:00 door Baarr
 
Thijs X

Thijs X

31/03/2007 19:16:00
Quote Anchor link
@ Baarr
Je kan geen value meegeven aan een image
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.