ja dem button die action geben, nich dem bild....
Box zentrieren mit Impromptu
-
-
Hmmm... und wie mache ich das?
-
-
Und wo ich baue das ein?
Ich habe es so versucht, das hat aber nicht funktioniert:
-
also du willst erst nchm klick auf den ok-button die page reloaden oder?
gib nochma den link, damit ich mir sicher bin...
und das script-stück bauste
so komplett ein: -
also du willst erst nchm klick auf den ok-button die page reloaden oder?
Ja, genau. Es geht allerdings nicht um die Scherzfragenseite, sondern um die Startseite. Ich habe mal eine Testdatei zum Probieren erstellt:
http://www.raetselstunde.de/test.html
Ganz unten auf der Seite ist eine Box mit der Zufalls-Scherzfrage. Ich möchte, dass nach dem Klick auf den Ok-Button die Seite neu geladen wird, damit dann die nächste Zufallsscherzfrage angezeigt wird.
Zitatund das script-stück bauste
so komplett ein:Ehrlich gesagt, weiß ich immer noch nicht, wo ich das einbauen soll. In den php-Code oder in die jquery.js?
-
das kommt dann in nen separates script-tag unters jquery.. aber bei deinem ding is es anders...
da muss dein location.reload hnter den aufruf von deinem alert -
Ich habe es jetzt so versucht:
PHPecho "<br /> <img onclick=\"$.prompt('$antwort',{prefix:'extblue',opacity: 0.1,overlayspeed:'fast',promptspeed:'fast'});centerObj('extblue');$(\"#extblue\").ready(function(){$(\".extbluebuttons button\" ).click(function(){location.reload();});});\" alt=\"Rätsel Lösung\" src=\"buttons/raetsel-loesung-small.png\" />";
Allerdings kommt dann beim Aufruf die Fehlermeldung:
ZitatParse error: syntax error, unexpected '(', expecting T_VARIABLE or '$' in /www/htdocs/w00b6843/raetselstunde/scherzfrage-zufall-rs2.php on line 35
-
{$(".extbluebuttons button\" )
hast du da nicht ein backslash vergessen? Ansonsten schau dir mal dein wirrwarr da genauer an, das haut iwie nicht hin
-
wenn die php-file stand-alone funktionsfähig ist dann schick mir die mal per icq...
edit. und grevas hat auch recht -
Ich weiß nicht warum, aber der fehlende Backslash wird hier nicht angezeigt, obwohl er im Code enthalten ist.
Da das Skript nicht so groß ist, poste ich es mal hier:
PHP
Alles anzeigen<?php @mysql_connect("localhost", "Username", "Passwort") or die ("Fehler beim Connect"); @mysql_select_db("Datenbankname") or die ("Datenbank nicht vorhanden"); function getQuestion(&$question, &$antwort) { // Zufallsfrage ermitteln $query = "Select question, antwort from scherzfrage order by rand()"; $result = mysql_query($query) or die ("MySQL-Fehler: " . mysql_error()); $row = mysql_fetch_array($result); $question = $row['question']; $antwort = $row['antwort']; $result = true; return $result; } $result = getQuestion($question, $antwort); if ($result === true) { echo $question; echo "<br /> <img onclick=\"$.prompt('$antwort',{prefix:'extblue',opacity: 0.1,overlayspeed:'fast',promptspeed:'fast'});centerObj('extblue');$(\"#extblue\").ready(function(){$(\".extbluebuttons button\" ).click(function(){location.reload();});});\" alt=\"Rätsel Lösung\" src=\"buttons/raetsel-loesung-small.png\" />"; } else echo "Mist, da ist was schiefgelaufen."; ?>
Da allerdings auf eine Datenbank zugegriffen wird, lässt es sich nicht ohne weiteres nachstellen.
-
Hat zwar nix mit deinem Problem zu tun, aber dies ist ganz schlecht:
Du selektierst die komplette Tabelle, obwohl du nur einen Datensatz brauchst, also: -
nd mach mal meine funktion aus dem onclick-hndler raus und schreib sie in ein eigenes script-tag...
mit jquery fallen an sich so sachen wie onclick, onmouseover etc weg,das wird alles gelöst vom quelltext realisiert -
nd mach mal meine funktion aus dem onclick-hndler raus und schreib sie in ein eigenes script-tag...
mit jquery fallen an sich so sachen wie onclick, onmouseover etc weg,das wird alles gelöst vom quelltext realisiertJapp das hab ich auch gerade gedacht^^
HTML
Alles anzeigen<script type="text/javascript"> function imgOnClick(antwort) { $.prompt(antwort, { prefix: 'extblue', opacity: 0.1, overlayspeed: 'fast', promptspeed: 'fast' } ); centerObj('extblue'); $("#extblue").ready(function() { $(".extbluebuttons button" ).click(function() { location.reload(); } ); } ); } </script>
-
Sorry, dass ich erst jetzt antworte, aber ich bin vorher nicht dazu gekommen.
@ Bandit
Danke für den Tipp. Ich habe es jetzt geändert. Ich muss mal ein mySQL-Tutorial machen. Immer diese Codezeilenkopiererei ist auf Dauer nix
@ Synaptic und Crazywulf
Ich habe dieses Skript jetzt direkt in den Code reinkopiert. Habt ihr das so gemeint oder sollte das Skript in die HTML-Datei und dann aufgerufen werden?
Im Moment erscheint jedenfalls der Lösungsbutton nicht mehr
PHP
Alles anzeigen<?php @mysql_connect("localhost", "Benutzer", "Passwort") or die ("Fehler beim Connect"); @mysql_select_db("Datenbank") or die ("Datenbank nicht vorhanden"); function getQuestion(&$question, &$antwort) { // Zufallsfrage ermitteln $query = "Select question, antwort from scherzfrage order by rand() limit 1"; $result = mysql_query($query) or die ("MySQL-Fehler: " . mysql_error()); $row = mysql_fetch_array($result); $question = $row['question']; $antwort = $row['antwort']; $result = true; return $result; } $result = getQuestion($question, $antwort); if ($result === true) { echo $question; echo "<br /> <script type=\"text/javascript\"> function imgOnClick(antwort) { $.prompt(antwort, { prefix: 'extblue', opacity: 0.1, overlayspeed: 'fast', promptspeed: 'fast' } ); centerObj('extblue'); $(\"#extblue\").ready(function() { $(\".extbluebuttons button\" ).click(function() { location.reload(); } ); } ); } </script>"; } else echo "Mist, da ist was schiefgelaufen."; ?>
-
Probiers mal so:
PHP
Alles anzeigen<script type="text/javascript"> function imgOnClick(antwort) { $.prompt(antwort, { prefix: 'extblue', opacity: 0.1, overlayspeed: 'fast', promptspeed: 'fast' } ); centerObj('extblue'); $("#extblue").ready(function() { $(".extbluebuttons button" ).click(function() { location.reload(); } ); } ); } </script> <?php @mysql_connect("localhost", "Username", "Passwort") or die ("Fehler beim Connect"); @mysql_select_db("Datenbankname") or die ("Datenbank nicht vorhanden"); function getQuestion(&$question, &$antwort) { // Zufallsfrage ermitteln $query = "SELECT `question`, `antwort` FROM scherzfrage ORDER BY rand() LIMIT 1"; $result = mysql_query($query) or die ("MySQL-Fehler: " . mysql_error()); if (@mysql_num_rows($result) > 0) { $row = mysql_fetch_array($result); $question = $row['question']; $antwort = $row['antwort']; $result = true; } else { $result = false; } return $result; } $result = getQuestion($question, $antwort); if ($result === true) { echo $question . "<br />"; echo "<img onclick=\"imgOnClick('" . $antwort . "');\" alt=\"Rätsel Lösung\" src=\"buttons/raetsel-loesung-small.png\" />"; } else { echo "Mist, da ist was schiefgelaufen."; } ?>
Den Javascript Teil solltest du aber am besten in den Header packen.
-
Ich habe deinen Code in die Datei kopiert und nur die Zugangsdaten geändert. Es funktioniert leider immer noch nicht. Die Seite aktualisiert nicht. Woran könnte es jetzt noch liegen?
-
cujo wir gucken da die tage mal via icq nach... machste mir deine php-file fertig (also die testseite) und gibst mir die urls von allen nötigen includes, dann brauchste mir deine DB-daten nich sagen und ich kann nach herzenslust testen, ich glaub des is net soo schwer, aber will net ins blaue "raten"
-
wie ich das verstanden haben willst du ja die Seite neu laden wenn man auf OK geklickt hat nachdem man die Lösung gelesen hat oder ?
Ich meine ein <input type="submit" /> tut doch genau das Oo ? Warum net einfach den als Okay Button einbauen ?
-
hmm... bei mir im Iron funktionierts
-