Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PHP - Meldung zeigen bevor, weitergeleitet wird

Frage Entwicklung PHP

Mitglied: AndyAh

AndyAh (Level 2) - Jetzt verbinden

21.03.2013, aktualisiert 10:03 Uhr, 4540 Aufrufe, 11 Kommentare

Hi NG,

ich habe nochmal ein kleines Problem.

Im Code-Schnipsel:

01.
if ($num_rows == 1) 
02.
03.
   //funktioniert 
04.
   header("location:http://localhost/php/html/weiter.html"); 
05.
06.
else 
07.
08.
   //Hier soll Meldung vor der Weiterleitung kommen 
09.
    
10.
   echo '<script language="text/javascript">alert("Anmeldung erfogt");</script>'; 
11.
   header("location:http://localhost/php/html/anmeldung.html"); 
12.
}
möchte ich versuchen, bei fehlerhafter Anmeldung eine Meldung auszugeben. Die Weiterleitung funktioniert zwar aber die Meldung nicht.

Gruß
Andy

PS: in der Darstellung sind anscheinend die Code-Tags verlohren gegangen!
Mitglied: SlainteMhath
21.03.2013 um 10:07 Uhr
Moin,

richtig, das funktioniert nicht. Wenn Du vorher eine Meldung anzeigen möchtest, musst auf eine extra Seite weiterleiten, auf der dann die Meldung angezeigt wird.

lg,
Slainte
Bitte warten ..
Mitglied: AndyAh
21.03.2013 um 10:19 Uhr
Hi,

wie wäre es, wenn ich die Meldung auf der aufrufenden Anmeldeseite ausgebe.

Wie könnte ich das realisieren?

Gruß
Andy
Bitte warten ..
Mitglied: dog
21.03.2013 um 10:19 Uhr
Und die Weiterleitung per HTML Meta-Tag oder Javascript machen.

http://de.selfhtml.org/html/kopfdaten/meta.htm#weiterleitung
Bitte warten ..
Mitglied: AndyAh
21.03.2013, aktualisiert um 10:26 Uhr
Hi dog,

die entsprechende Seite wird von PHP aus durch header(....); aufgerufen.

Ich muß quasi eine Seite zurück. Die Meldung "ungültige Anmeldung" soll also auf der HTML-Seite angezeigt werden.

Gruß
Andy
Bitte warten ..
Mitglied: flow.ryan
21.03.2013 um 13:46 Uhr
Hallo,

mit deiner header()-Funktion wirst du ohnehin so noch Schwierigkeiten bekommen:
Zitat: "Beachten Sie, dass Sie die Funktion header() aufrufen müssen, bevor Sie irgendeine andere Art von Ausgabe (seien es normale HTML-Tags, Leerzeilen in einer Datei oder von PHP) zum Client schicken." (Quelle: http://php.net/manual/de/function.header.php)

Und eine Meldung nach dem header()-Aufruf wird nicht erscheinen, da du ja schon umleitest.

Was du machen kannst:
1. Meldung per Javascript-Alert und Umleitung ebenfalls per Javascript.
2. Wie viele Foren-Systeme es machen:
- ausgeben, ob der Login erfolgreich war oder nicht (ggf. per echo())
- dann via META-Refresh auf eine andere Seite weiterleiten
3. Meldung ausgeben, ob der Login erfolgreich war - dann einen Button "weiter" erzeugen.

Gruß,
Florian
Bitte warten ..
Mitglied: AndyAh
21.03.2013 um 14:31 Uhr
Hi flow.ryan,

könntest du evtl. den passenden Code sehen lassen? Ich arbeite mich erst seit ein paar Tagen in die Materie ein.

Gruß
Andy
Bitte warten ..
Mitglied: flow.ryan
21.03.2013 um 14:38 Uhr
Hallo,

1.
01.
<script type="text/javascript"> 
02.
alert('Login erfolgreich!'); 
03.
window.location = "http://www.google.com/"; 
04.
</script>
2.
01.
<b>Login erfolgreich! Sie werden in wenigen Sekunden weitergeleitet...</b> 
02.
<meta http-equiv="refresh" content="3; URL=http://www.example.com/seite">
3.
01.
<b>Login erfolgreich! Bitte klicken Sie nun auf &quot;weiter&quot;</b> 
02.
<a href="http://www.example.com/seite">Weiter</a>
Ich hoffe ich konnte dir helfen.

Gruß
Florian
Bitte warten ..
Mitglied: Guenni
21.03.2013 um 19:08 Uhr
Hi Andy,

man kann auch noch eine Info ausgeben, warum man weitergeleitet wird,

und läßt dem User noch ein paar Sekunden Zeit, diese Info zu lesen.

01.
<?php 
02.
$num_rows = 2; 
03.
if ($num_rows == 1){ 
04.
   header("location:http://localhost/php/html/weiter.html"); 
05.
   exit
06.
07.
?> 
08.
<html> 
09.
<head> 
10.
<title>Weiterleitung nach n Sekunden</title> 
11.
<script type="text/javascript"
12.
<!--  
13.
var seconds = 5; 
14.
var aktiv = window.setInterval("countdown()", 1000); 
15.
function countdown (){ 
16.
	document.getElementById("show_counter").innerHTML='Ihre Anmeldedaten waren falsch. Sie werden in ' + seconds + ' Sekunden weitergeleitet.'
17.
	if(seconds == 0){ 
18.
		window.clearInterval(aktiv); 
19.
		// Weiterleitung: 
20.
		window.location.href = 'http://www.google.com'
21.
22.
	seconds --; 
23.
24.
// --> 
25.
</script> 
26.
</head> 
27.
<body> 
28.
<div id="show_counter"></div> 
29.
</body> 
30.
</html>
Gruß
Günni
Bitte warten ..
Mitglied: AndyAh
22.03.2013 um 07:21 Uhr
Hi Florian,

ich habe es ausprobiert. Es gibt ein Problem mit dem Javascript. In diesem Projekt habe ich das Javascript in einer separaten Datei. Wenn ich deinen JS-Teil eingefüge, wird mir beim anzeigen der Webside am Anfang die Meldung ein einer Endlosschleife angezeigt.

Gruß
Andy
Bitte warten ..
Mitglied: flow.ryan
22.03.2013, aktualisiert um 08:20 Uhr
Hi,

dann bau doch einfach eine Funktion draus:
01.
<script type="text/javascript"> 
02.
function weiterleitung(meldung,ziel) 
03.
04.
  alert(meldung);  
05.
  window.location = ziel;  
06.
}
Den Aufruf machst du im Erfolgsfall z.B. folgendermaßen:
01.
if ($num_rows == 1){  
02.
    echo '<script type="text/javascript">'; 
03.
    echo 'weiterleitung("Login erfolgreich!","http://meine.seite/unterseite.html");'; 
04.
    echo '</script>'; 
05.
} 
Oder du nimmst die Lösung von Günni

Gruß,
Florian
Bitte warten ..
Mitglied: AndyAh
22.03.2013 um 09:07 Uhr
Hi Florian,

eitwas umgestellt funktioniert es jetzt.

Gruß
Andy
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (24)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...