php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben || php-forumjetzt anmelden
 

PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #16 (permalink)  
Alt 04-05-2022, 15:49
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist gerade online
Registriert seit: Mar 2008
Beiträge: 3.880
h3ll wird schon bald berühmt werden
Standard

Du hast ja den Text, der die fehlerhafte Stelle ausgaben soll, auskommentiert. So sieht man natürlich nix.
Mit Zitat antworten
  #17 (permalink)  
Alt 04-05-2022, 15:57
jenny258
 Registrierter Benutzer
Links : Onlinestatus : jenny258 ist offline
Registriert seit: May 2022
Beiträge: 17
jenny258 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von h3ll Beitrag anzeigen
Du hast ja den Text, der die fehlerhafte Stelle ausgaben soll, auskommentiert. So sieht man natürlich nix.
korrekt, wenn der teil nämlich nicht auskommentiert ist, verschwindet der button um den text überhaupt abzuschicken.

Ich weiß es ist etwas viel verlangt. Ich würde den gesamten code gerne auf Gitlab stellen. Würdest du ihn dir vl ansehen?
Mit Zitat antworten
  #18 (permalink)  
Alt 04-05-2022, 16:20
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist gerade online
Registriert seit: Mar 2008
Beiträge: 3.880
h3ll wird schon bald berühmt werden
Standard

Du sollst dir ja auch den ausgegebenen HTML-Code anschauen und nicht irgendwelche Buttons.

Wenn du möchtest, dass jemand anders die Arbeit für dich macht, musst du ein Jobangebot erstellen. Ich wäre aber nicht interessiert, da ich schon einen Vollzeitjob als Programmierer habe und Programmierforen als meine Freizeitbeschäftigung sehe.
Mit Zitat antworten
  #19 (permalink)  
Alt 04-05-2022, 16:41
jenny258
 Registrierter Benutzer
Links : Onlinestatus : jenny258 ist offline
Registriert seit: May 2022
Beiträge: 17
jenny258 befindet sich auf einem aufstrebenden Ast
Standard

wie soll ich mir die Ausgabe ansehen, wenn der button auf den ich klicken muss, damit das Formular per POST übersendet wird nicht angezeigt wird ?

ich mach das nur just for fun und zur übung.

und BTW:
Einen Mitarbeiter der Firmencodes postet wird wohl nicht lange seinen Job haben. Also ich würde ihn sofort kündigen und wenn möglich sogar entlassen.
Mit Zitat antworten
  #20 (permalink)  
Alt 04-05-2022, 16:53
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist gerade online
Registriert seit: Mar 2008
Beiträge: 3.880
h3ll wird schon bald berühmt werden
Standard

Zitat:
Zitat von jenny258 Beitrag anzeigen
wie soll ich mir die Ausgabe ansehen, wenn der button auf den ich klicken muss, damit das Formular per POST übersendet wird nicht angezeigt wird ?
Unter Google Chrome und Firefox: Rechtsklick und "View Page Source".

Zitat:
Zitat von jenny258 Beitrag anzeigen
ich mach das nur just for fun und zur übung.

und BTW:
Einen Mitarbeiter der Firmencodes postet wird wohl nicht lange seinen Job haben. Also ich würde ihn sofort kündigen und wenn möglich sogar entlassen.
Es ist egal wofür du den Code machst. Das spielt überhaupt keine Rolle.
Mit Zitat antworten
  #21 (permalink)  
Alt 04-05-2022, 17:30
jenny258
 Registrierter Benutzer
Links : Onlinestatus : jenny258 ist offline
Registriert seit: May 2022
Beiträge: 17
jenny258 befindet sich auf einem aufstrebenden Ast
Standard

da bekomme ich fehler bei meinen rollen. ich seh mir das mal.

Es ist ärgerlich, dass ich da nicht selber drauf gekommen bin.

Danke dir
Mit Zitat antworten
  #22 (permalink)  
Alt 04-05-2022, 18:04
jenny258
 Registrierter Benutzer
Links : Onlinestatus : jenny258 ist offline
Registriert seit: May 2022
Beiträge: 17
jenny258 befindet sich auf einem aufstrebenden Ast
Standard

an den Rollen lag es nicht

Jetzt bekomme ich wieder einen neuen Fehler und es wird überhaut kein Token mehr erzeugt:

string(17) "sess CONTROLLER: " bool(false) string(10) "POST TOKEN" string(233) "Header bereits gesendet in A:\Meine Programme\Ampps\www\mvcJennyNeu\app\views\layouts\navbar.php in Zeile 47 Redirect nicht moeglich, klicken Sie daher statt dessen

in der Navbar ist nur der Link:

<li class="nav-item">
<a class="nav-link" href="<?php echo URLROOT; ?>/users/create">Registrieren</a>
</li>


private static function sessionStart(){

/* if( empty(session_id()) && !headers_sent()){
session_start();
} */

if( session_status() !== PHP_SESSION_ACTIVE ){
if (!headers_sent($filename, $linenum)) {
session_start();

// Wahrscheinlich wollen Sie hier eine Fehlermeldung auslösen
}
else {

echo "Header bereits gesendet in $filename in Zeile $linenum\n" .
"Redirect nicht moeglich, klicken Sie daher statt dessen <a ";

//exit;
}
}
}



Ich werde wohl wieder mit der Session Helper Funktion arbeiten. Dort werden mir zumindest die tokens erzeugt.

umbauen kann ich es ja immer wieder zum testen.

danke nochmal für deine Hilfe
Mit Zitat antworten
  #23 (permalink)  
Alt 05-05-2022, 08:04
ArneDrews
 Registrierter Benutzer
Links : Onlinestatus : ArneDrews ist offline
Registriert seit: Jan 2016
Beiträge: 44
ArneDrews befindet sich auf einem aufstrebenden Ast
Standard

Seit #3 scheint sich der Code ja doch schon wieder verändert zu haben, was es unübersichtlich und nicht einfach nachvollziehbar macht.

Grundsätzlich sei gesagt, dass ein headers already sent bereits durch ein einfaches Leerzeichen oder eine Leerzeile geworfen werden kann.

Beispiel, richtig:
PHP-Code:
<?php
session_start
();
Beispiel, (kann Fehler werfen!):
PHP-Code:

<?php
session_start
();
Bereits eine Leerzeile vor dem Öffnenden PHP-Tag kann zu diesem Fehler führen.
https://www.php-rocks.de/thema/65-ca...eady-sent.html

Du müsstest Deine Codes am besten auch mal in PHP-Tags hier im Editor packen, dann sind die besser zu lesen.
Mit Zitat antworten
  #24 (permalink)  
Alt 05-05-2022, 23:12
jenny258
 Registrierter Benutzer
Links : Onlinestatus : jenny258 ist offline
Registriert seit: May 2022
Beiträge: 17
jenny258 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von ArneDrews Beitrag anzeigen
Seit #3 scheint sich der Code ja doch schon wieder verändert zu haben, was es unübersichtlich und nicht einfach nachvollziehbar macht.

Grundsätzlich sei gesagt, dass ein headers already sent bereits durch ein einfaches Leerzeichen oder eine Leerzeile geworfen werden kann.

Beispiel, richtig:
PHP-Code:
<?php
session_start
();
Beispiel, (kann Fehler werfen!):
PHP-Code:

<?php
session_start
();
Bereits eine Leerzeile vor dem Öffnenden PHP-Tag kann zu diesem Fehler führen.
https://www.php-rocks.de/thema/65-ca...eady-sent.html

Du müsstest Deine Codes am besten auch mal in PHP-Tags hier im Editor packen, dann sind die besser zu lesen.
oh stimmt, ich werde das in Zukunft in Tags packen. Vielen Dank.

Bei mir ist es leider wohl ein anderes Problem. Es befindet sich kein Leerzeichen. Leider.

session_start() befindet sich in der Session Klasse in einer eigenen Methode.
Dieselbe Klasse funktioniert bei einem einfachen externen LoginScript problemlos. Das Problem kann demnach "fast" nicht an der Klasse ansich liegen.

Alles was ich bisher versucht habe, hat mir nicht weitergeholfen. Bekomme immer wieder den selben Fehler.
Mit Zitat antworten
  #25 (permalink)  
Alt 06-05-2022, 07:31
ArneDrews
 Registrierter Benutzer
Links : Onlinestatus : ArneDrews ist offline
Registriert seit: Jan 2016
Beiträge: 44
ArneDrews befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
session_start() befindet sich in der Session Klasse in einer eigenen Methode.
Dieselbe Klasse funktioniert bei einem einfachen externen LoginScript problemlos. Das Problem kann demnach "fast" nicht an der Klasse ansich liegen.
Es hat doch auch niemand gesagt, dass es unmittelbar in der Nähe von session_start() sein muss!
Bevor - ob lange oder kurz davor spielt keine Rolle - session_start() loslegen möchte, ist bereits eine Ausgabe an den Browser gesendet worden! Das Leerzeichen war nur ein Beispiel, es kann alles andere mögliche sein.
Du wirst Deine Scripte von Beginn an bis zum session_start() prüfen müssen. Irgendwo findet dort eine "Ausgabe" statt.
Mit Zitat antworten
  #26 (permalink)  
Alt 07-05-2022, 14:41
jenny258
 Registrierter Benutzer
Links : Onlinestatus : jenny258 ist offline
Registriert seit: May 2022
Beiträge: 17
jenny258 befindet sich auf einem aufstrebenden Ast
Standard

session_start() wird bis dato bei mir nur an zwei stellen genutzt. Zur Überprüfung der Tokens.

Die erste Ausgabe findet statt, wenn man auf den Link klickt der den View mit dem Formular lädt.
Header bereits gesendet in A:\Meine Programme\Ampps\www\mvcJennyNeu\app\views\layouts\navbar.php

Allerdings ist hier nirgendwo ein Leerzeichen Problem. Habe das schon mehrmals gecheckt.
Mit Zitat antworten
  #27 (permalink)  
Alt 07-05-2022, 20:29
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist gerade online
Registriert seit: Mar 2008
Beiträge: 3.880
h3ll wird schon bald berühmt werden
Standard

Ich vermute dass du die Navigation ausgibst, bevor du die Session startest. Vor dem Start der Session darf aber keinerlei Ausgabe stattfinden.
Mit Zitat antworten
  #28 (permalink)  
Alt 07-05-2022, 21:48
jenny258
 Registrierter Benutzer
Links : Onlinestatus : jenny258 ist offline
Registriert seit: May 2022
Beiträge: 17
jenny258 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von h3ll Beitrag anzeigen
Ich vermute dass du die Navigation ausgibst, bevor du die Session startest. Vor dem Start der Session darf aber keinerlei Ausgabe stattfinden.
es funktioniert jetzt tatsächlich wenn ich den token bereits vor der nav erzeuge.

Was mich jetzt aber doch noch interessieren würde. Wie könnte ich es bewerkstelligen, dass ich die session und den token direkt vom hidden field aus erzeugen kann.

Jetzt mache ich es so:

PHP-Code:
<input type="hidden" name="_token" value="<?php echo $sess;?>">
sauberer wäre der Code aber so:

PHP-Code:
<input type="hidden" name="_token" value="<?php echo Session::init()->setCsrf();?>">
Hast du da einen Tipp für mich oder geht es nur so wie ich es jetzt gemacht habe?
Mit Zitat antworten
  #29 (permalink)  
Alt 07-05-2022, 22:05
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist gerade online
Registriert seit: Mar 2008
Beiträge: 3.880
h3ll wird schon bald berühmt werden
Standard

In der HTML-Ausgabe hat so eine Logik wie Session-Aufbau oder Token-Generierung usw. nichts verloren. Das ist das Gegenteil von sauberer Code, da das EVA-Prinzip nicht eingehalten wird.
Mit Zitat antworten
  #30 (permalink)  
Alt 07-05-2022, 22:32
jenny258
 Registrierter Benutzer
Links : Onlinestatus : jenny258 ist offline
Registriert seit: May 2022
Beiträge: 17
jenny258 befindet sich auf einem aufstrebenden Ast
Standard

Wir haben im Kurs gelernt, dass so eine Formularübertragung zumindest ein wenig sicherer wird ?

Ich hatte mein Projekt mit Laravel gemacht und auch dort nutze ich CSRF für die Übertragung von Formulardaten.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Sessions und URL strauberry PHP Developer Forum 2 28-02-2006 11:32
2 sessions ? Mr.Taylor PHP Developer Forum 3 16-11-2005 08:42
Sessions? fl4sh PHP Developer Forum 3 18-10-2005 22:09
allgemeine fragen zu sessions / sessions mit php user Kurt Cobain PHP Developer Forum 1 17-07-2005 14:32
Sessions Günni PHP Developer Forum 2 18-11-2002 00:04

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

OnPremise versus Cloud - das richtige System finden
Wir beleuchten in diesem Artikel, die Vor- und Nachteile für Cloud oder OnPremise Systemen. Und warum es definitiv Zeit wird in die Cloud zu wechseln.

09.05.2022 | julia_mjr

Warum Texterstellung mit künstlicher Intelligenz richtig gut ist
Warum Texterstellung mit künstlicher Intelligenz richtig gut istKünstliche Intelligenz ist dabei, die Welt zu erobern. Die größten Unternehmen entwickeln Systeme, die einen Text für Sie schreiben können. Und sie machen das sehr gut.

05.01.2022 | Berni


 

Aktuelle PHP Scripte

ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script ansehen ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script

Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder

01.07.2022 Berni | Kategorie: PHP/ Anzeigenmarkt
NewsLetter Script PHP ansehen NewsLetter Script PHP

NewsLetter Script PHP is a simple email subscriptions newsletters script written in PHP and MySQL. Admin could send news in the letters to a mailing list of subscribed visitors. All the news and subscription form could be placed into a page of your web

28.06.2022 nevenov | Kategorie: PHP/ Mail
Contact Form PHP ansehen Contact Form PHP

Each website needs a contact form - Contact Form PHP script is very easy to install on your contacts page and administer.

27.06.2022 nevenov | Kategorie: PHP/ Formular
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 23:24 Uhr.