WinFuture-Forum.de: Submit-button Als Bild - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Submit-button Als Bild


#1 Mitglied ist offline   Bash 

  • Gruppe: aktive Mitglieder
  • Beiträge: 108
  • Beigetreten: 14. Mai 06
  • Reputation: 0

geschrieben 29. Februar 2008 - 09:59

Hi,

ich bin grad dran ne Lösung zu suchen wie ich ein Bild als Submit-Button verwenden kann.
Zuerst hab ich es so versucht:

<input type="image" value="submit" scr="..." />


Aber das funktioniert im IE leider nicht wie ich festgestellt habe.

Dann hab ich es so versucht:

<button type="submit"><img src="..." /></button>


im CSS hab ich dann noch Hintergrund und Rand des Button Objekts entfernt.
Das funktioniert nun auch soweit.
Allerdings hätte ich noch gern dass beim drüberfahren mit der Maus die Hand angezeigt wird und nicht der Pfeil.

Weiß jemand wie ich das noch anstellen könnte?

Grüße
0

Anzeige



#2 Mitglied ist offline   tobiasndw 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.815
  • Beigetreten: 24. September 03
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 29. Februar 2008 - 10:36

mal damit versucht?

<input type="submit" style="background-image:..." />
0

#3 Mitglied ist offline   Bash 

  • Gruppe: aktive Mitglieder
  • Beiträge: 108
  • Beigetreten: 14. Mai 06
  • Reputation: 0

geschrieben 29. Februar 2008 - 10:54

oh thx, is auch ne schicke lösung.
aber ne Hand über dem Button hab ich irgendwie immer noch nicht.

sieht jetzt so aus

<input type="submit" style="background-image:url(../pictures/send.jpg); width:92px; height:30px; border:none;" name="submit" value=" " />
0

#4 Mitglied ist offline   [Elite-|-Killer] 

  • Gruppe: aktive Mitglieder
  • Beiträge: 762
  • Beigetreten: 02. Oktober 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Passau

geschrieben 29. Februar 2008 - 11:05

<button class="x" />
und im CSS teil dann hald:
.x:hover
{
cursor: hand;
}
0

#5 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.947
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 29. Februar 2008 - 11:11

Zitat

.x:hover

Leider funktioniert diese Pseudoklasse nicht im IE6. Und damit surfen leider immer noch sehr viele.
0

#6 Mitglied ist offline   TO_Webmaster 

  • Gruppe: Moderation
  • Beiträge: 3.225
  • Beigetreten: 27. März 02
  • Reputation: 82
  • Geschlecht:Männlich

geschrieben 29. Februar 2008 - 13:09

Beitrag anzeigenZitat (Bash: 29.02.2008, 09:59)

Hi,

ich bin grad dran ne Lösung zu suchen wie ich ein Bild als Submit-Button verwenden kann.
Zuerst hab ich es so versucht:

<input type="image" value="submit" scr="..." />


Aber das funktioniert im IE leider nicht wie ich festgestellt habe.


Was funktioniert denn nicht, wenn man fragen darf? Übrigens muss das src statt scr heißen. In SELFHTML steht übrigens noch folgendes:

Zitat

Bei grafischen Buttons wird nicht nur der eventuell vorhandene Wert im value Attribut übertragen, sondern zusätzlich auch die Koordinaten des Klicks auf das Bild. Das heißt es werden zwei zusätzlich Werte abgeschickt in der Form name.x und name.y (in PHP wird daraus name_x/name_y). Der IE sendet nur die Koordinaten.


Liegt dort evtl. dein Problem?

MfG TO_Webmaster
The old reverend Henry Ward Beecher
called a hen the most elegant creature.
The hen pleased for that,
laid an egg in his hat.
And so did the hen reward Beecher.
0

#7 Mitglied ist offline   Bash 

  • Gruppe: aktive Mitglieder
  • Beiträge: 108
  • Beigetreten: 14. Mai 06
  • Reputation: 0

geschrieben 04. März 2008 - 13:34

Beitrag anzeigenZitat (TO_Webmaster: 29.02.2008, 13:09)

Was funktioniert denn nicht, wenn man fragen darf?


Naja, es passiert einfach nichts wenn ich drauf klicke. Bzw das PHP Script wird nicht ausgeführt und die Seite lädt sich selbst einfach nur neu.

Im Moment hab ich es jetzt so:
<input type="submit" class="button" name="submit" value=" " />
und hab dann im CSS halt nen Hintergrundbild dahinter gelegt.
Nen 'Hand-cursor' hab ich halt im Firefox immer noch nicht.

Aber man kann wohl nicht alles haben ^^
0

#8 Mitglied ist offline   Gitarremann 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.263
  • Beigetreten: 04. Juni 06
  • Reputation: 3
  • Geschlecht:Männlich
  • Wohnort:Trebnitz

geschrieben 04. März 2008 - 14:03

Beitrag anzeigenZitat (Bash: 04.03.2008, 13:34)

Naja, es passiert einfach nichts wenn ich drauf klicke. Bzw das PHP Script wird nicht ausgeführt...


Wie "sagst" du denn dem PHP-Script, dass es bei einem Klick auf den Button ausgeführt werden soll, bzw. wie sieht denn das Formular im ganzen aus?
Der Pessimist sagt: "Das Glas ist halb leer,"
Der Optimist sagt: "Das Glas ist halb voll."
Der Realist sagt: "Bedienung, zwei Neue!"
0

#9 Mitglied ist offline   Bash 

  • Gruppe: aktive Mitglieder
  • Beiträge: 108
  • Beigetreten: 14. Mai 06
  • Reputation: 0

geschrieben 04. März 2008 - 14:19

if(isset($_POST['submit'])){

ich überprüfe mit isset() ob das Feld Submit innerhalb meines $_POST Arrays existiert oder nicht.
0

#10 Mitglied ist offline   Gitarremann 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.263
  • Beigetreten: 04. Juni 06
  • Reputation: 3
  • Geschlecht:Männlich
  • Wohnort:Trebnitz

geschrieben 04. März 2008 - 14:29

Beitrag anzeigenZitat (Bash: 04.03.2008, 14:19)

if(isset($_POST['submit'])){

ich überprüfe mit isset() ob das Feld Submit innerhalb meines $_POST Arrays existiert oder nicht.



Was soll die Abfrage denn bewirken? Wenn du etwas für value="..." angibst dann ist die Abfrage erfolgreich und wenn du nix angibst, dann ist sie nicht erfolgreich. Der Benutzer hat da gar keinen Einfluß.
Der Pessimist sagt: "Das Glas ist halb leer,"
Der Optimist sagt: "Das Glas ist halb voll."
Der Realist sagt: "Bedienung, zwei Neue!"
0

#11 Mitglied ist offline   Bash 

  • Gruppe: aktive Mitglieder
  • Beiträge: 108
  • Beigetreten: 14. Mai 06
  • Reputation: 0

geschrieben 04. März 2008 - 14:40

ich poste dir einfach mal das ganze Formular, dann kannst du es dir ansehen.
Ich weiß nämlich grad nicht was du mit deinem Posting aussagen willst, da ich 'value' bei mir grad nur mit nem Leerzeichen belegt habe

				<?php
				if(isset($_POST['submit'])){
				
				//HTML- und PHP-Tags aus den Eingabefeldern entfernen
				$name=strip_tags($_POST['name']);
				$vorname=strip_tags($_POST['vorname']);
				$firma=strip_tags($_POST['firma']);
				$telefon=strip_tags($_POST['telefon']);
				$fax=strip_tags($_POST['fax']);
				$mail=strip_tags($_POST['mail']);
				$strasse=strip_tags($_POST['strasse']);
				$nummer=strip_tags($_POST['nummer']);
				$plz=strip_tags($_POST['plz']);
				$ort=strip_tags($_POST['ort']);
				$nachricht=strip_tags($_POST['nachricht']);

				//Pflichtangaben
				if(strlen($_POST['name'])<3){
				$error_msg="Bitte geben Sie Ihren Nachnamen an.<br />";
				}
				
				if(strlen($_POST['vorname'])<2){
				$error_msg="Bitte geben Sie Ihren Vornamen an.<br />";
				}
				
				if(!ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$",$_POST['mail'])){
				$error_msg.="Bitte geben Sie eine gültige eMail-Adresse an.<br />";
				}
				
				if(strlen($_POST['nachricht'])<3){
				$error_msg.="Bitte geben Sie eine Nachricht an.<br />";
				}
				
				if(isset($error_msg)){
				
				//Eines der Felder wurde nicht korrekt ausgefüllt
				echo "Ihre Anfrage konnte aus folgenden Gründen leider nicht bearbeitet werden:<br /><br />";
				echo $error_msg;
				echo "<br />Bitte klicken Sie auf <a href=java script:history.back(1) class=back>zurück</a> und füllen Sie alle Felder aus.";
				
				}else{

				
				//Formular ausgefüllt - eMail generieren
				$recipient="mail@...";
				$subject="Anfrage";
				$header="From: " . $mail . "\r\n";
				$mail_body ="Das Anfrage-Formular wurde am " . date("d.m.Y") . " um " . date("H:i") . "Uhr ausgefüllt.\n";
				$mail_body.="Folgende Werte wurden eingetragen:\n\n";
				$mail_body.="Anrede: " . $anrede . "\n";
				$mail_body.="Name: " . $name . "\n";
				$mail_body.="Vorname: " . $vorname . "\n";
				$mail_body.="Firma: " . $firma . "\n";
				$mail_body.="Telefon: " . $telefon . "\n";
				$mail_body.="Rückruf: " . $call . "\n";
				$mail_body.="Fax: " . $fax . "\n";
				$mail_body.="E-Mail: " . $mail . "\n";
				$mail_body.="Straße: " . $strasse . " " . $nummer . "\n";
				$mail_body.="Ort: " . $plz . " " . $ort . "\n\n";
				$mail_body.="Nachricht:\n";
				$mail_body.=$nachricht .;
				
				mail($recipient,$subject,$mail_body,$header);
				
				//Formular ausgefüllt - Meldung ausgeben
				echo "Vielen Dank für Ihre Nachricht.";
				}
				}else{
				//Formular noch nicht ausgefüllt - Formular anzeigen
				?>
				
				<form action="<?php $_SERVER['PHP_SELF'] ?>" method="POST">
				<table>
					<tr>
						<td width="110px">Anrede</td>
						<td>
							<input type="radio" name="anrede" value="Herr" style="border:none" />Herr
							<input type="radio" name="anrede" value="Frau" style="border:none" />Frau
						</td>
					</tr>
					<tr>
						<td valign="top">Name*</td>
						<td><input name="name" type="text" style="width:240px;" /></td>
					</tr>
					<tr>
						<td valign="top">Vorname*</td>
						<td><input name="vorname" type="text" style="width:240px;" /></td>
					</tr>

					<tr>
						<td valign="top">Firma</td>
						<td><input name="firma" type="text" style="width:240px;" /></td>
					</tr>
					<tr>
						<td valign="top">Telefon*</td>
						<td><input name="telefon" type="text" style="width:105px;" /> <input name="call" type="checkbox" value="Um Rückruf wird gebeten" style="margin:0 5px 0 5px; padding:0; border:none;" />Bitte um Rückruf</td>
					</tr>
					<tr>
						<td valign="top">Fax</td>
						<td><input name="fax" type="text" style="width:240px;" /></td>
					</tr>
					<tr>
						<td valign="top">E-Mail*</td>
						<td><input name="mail" type="text" style="width:240px;" /></td>
					</tr>
					<tr>
						<td valign="top">Straße / Nr.</td>
						<td><input name="strasse" type="text" style="width:169px" /> <input name="nummer" type="text" style="width:64px;" /></td>
					</tr>
					<tr>
						<td valign="top">PLZ / Ort</td>
						<td><input name="plz" type="text" style="width:64px;" /> <input name="ort" type="text" style="width:169px" /></td>
					</tr>
					<tr>
						<td valign="top">Ihre Nachricht</td>
						<td><textarea name="nachricht" style="width:240px; border:1px solid #808080;" rows="3"></textarea></td>
					</tr>
					<tr>
						<td></td>
						<td width="245px" align="right">
						<input type="submit" class="button" name="submit" value=" " />
						</td>
					</tr>
					<tr>
						<td><span style="font-size:10px; color:#808080;">*  Pflichtfeld</span></td>
					</tr>
				</table>
				</form>
				<?php
				}
				?>

0

#12 Mitglied ist offline   Gitarremann 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.263
  • Beigetreten: 04. Juni 06
  • Reputation: 3
  • Geschlecht:Männlich
  • Wohnort:Trebnitz

geschrieben 04. März 2008 - 14:50

Ich würde ein verstecktes Feld einbauen und das abfragen statt den ollen Knopf.

also im Formular noch mit drin

<input type="hidden" name="blabla" value="ja" />


und die Abfrage statt mit dem Knopf

  if($_POST['blabla'] == "ja"){



Deins geht auch irgendwie aber ich weiß nicht ob es nur am Leerzeichen liegt. Du fragst ja im Prinzip ab, ob der Knopf einen Wert hat und der hat ja nicht wirklich einen, wenn du keinen zuweist. Vielleicht reicht es auch beim Knopf bei value einfach was einzutragen. Normalerweise ist das dann aber die Beschriftung.
Der Pessimist sagt: "Das Glas ist halb leer,"
Der Optimist sagt: "Das Glas ist halb voll."
Der Realist sagt: "Bedienung, zwei Neue!"
0

#13 Mitglied ist offline   Bash 

  • Gruppe: aktive Mitglieder
  • Beiträge: 108
  • Beigetreten: 14. Mai 06
  • Reputation: 0

geschrieben 04. März 2008 - 14:53

ganz genau. und da ich in diesem fall aber die beschriftung über das Bild löse hab ich bei Value nur ein Leerzeichen eingetragen um keine doppelte Beschriftung zu haben.

Aber danke für deine Idee. werd ich nachher mal ausprobieren. Melde mich wieder.

*Edit: Jopp, kommt besser so. danke für die Hilfe : )

Dieser Beitrag wurde von Bash bearbeitet: 04. März 2008 - 15:41

0

#14 Mitglied ist offline   ozono 

  • Gruppe: Mitglieder
  • Beiträge: 1
  • Beigetreten: 07. März 08
  • Reputation: 0

geschrieben 07. März 2008 - 13:29

Zu dem Thema ob das PHP-Script einen wert vom submit-button erhält wenn das value-attribut leer bleibt:

Firefox generiert automatisch den wert "Anfrage abschicken" falls das attribut value gänzlich fehlt: <input type="submit" name="submit1">
Ich weiß nicht was IE macht.
Dementsprechend befindet sich im $_POST-Array die variable submit1 der wert "Anfrage abschicken".

Falls das value-attribut den wert "" besiitzt <input type="submit" name="submit1" value="">, fehtl die Beschriftung, aber
das $_POST-Array bistzt trotzdem die variable submit1 und zwar mit dem wert eines LEHREN STRINGS.
Wenn man die Variable $_POST["submit1"] mit der funktion isset() überprüft kommt dabei TRUE zurück.

Wenn man zum beispiel einen wert mit der funktion array_surch() in einem array sucht und die funktion gibt die
indexnummer für das erste array-element zurück also 0 , währe das ungünstig wenn man das so in einer if-klanner packen würde.
Überprüfen müsste man das dann so if(array_surch($wert, $array) === true) {...}
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0