php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.09.2011, 16:38  
Caner
Gast
 
Beiträge: n/a
Standard [Erledigt] Einfacher Login für einen Chat/ Mehrfache Erweiterung eines Array

Folgendes wäre mein Code(unvollständig) für den Zugang zu meinem Chat:
Code:
<html lang="de">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-1250">
<title>Willkommen im Chat 1.0</title>
<link rel="stylesheet" type="text/css" href="phpkid.css">
</head>
<body>
  
      <form action= "" method= "POST" > 
  
      <input type= "text" value="Name hier eingeben" name= "input_value" > 
   
      <input type= "submit" name= "submit" >
PHP-Code:
<?php 
Session_start
();//session start
if ( isset ( $_POST 'submit' ] ) ) // abfrage nach aktualisierung
    

      

    
$name $_POST 'input_value' ] ; //textfeld wird ausgelesen
            
    
$chatnamen=array();
    
$_SESSION['chatnamen']=$chatnamen;
            
    
$chatnamen1=$_SESSION['chatnamen'];//auslesen
    
$chatnamen1[]=$name;//bearbeiten -> Name ins array hinzufügen
            
    
$_SESSION['chatnamen']=$chatnamen1;    //einlesen
    
echo $chatnamen1[0];                                        
 }
?>
Code:
</form>
</body>

</html>
Mein Ziel wäre es, aus einem Textfeld den eingegebenen Namen auszulesen und in einem Array apzuspeichern. Außerdem wird das über mehrere Fenster gehen, damit sich der Array mit mehreren Namen füllt. D.h. es greifen z. Bsp 2 Nutzer auf ein und den selben Array zu, aber über zwei "unterschiedliche" Scripte.

Man soll so die Namensliste beliebig erweitern können und später beim Chat auf die Namen zugreifen können, damit man anzeigen kann wer was geschrieben hat.

Problem bei mir:
Nach dem Auslesen des Arrays aus der Session füge ich einen Namen hinzu, aber beim 2.Durchlauf wird der erste Name einfach überschrieben
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 20.09.2011, 17:04  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.234
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

1. Sessions sind nur für den sichtbar/aktiv, der sie anzeigt. Das geht nicht über zwei Browserfenster gleichzeitig mit dem gleichen Array. Zumindest so wie du sie verwendest.
2. Du leerst die Chatnamen explizit bei jedem Aufruf. Wieso erwartest du, dass in einem leeren Array ($chatnamen) irgendetwas drin steht?
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 23.09.2011, 13:45  
Caner
Gast
 
Beiträge: n/a
Standard

Hab es jetzt mit implode und explode hinbekommen, aber danke =D
  Mit Zitat antworten
Alt 23.09.2011, 13:51  
Caner
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von mepeisen Beitrag anzeigen
1. Sessions sind nur für den sichtbar/aktiv, der sie anzeigt. Das geht nicht über zwei Browserfenster gleichzeitig mit dem gleichen Array. Zumindest so wie du sie verwendest.
2. Du leerst die Chatnamen explizit bei jedem Aufruf. Wieso erwartest du, dass in einem leeren Array ($chatnamen) irgendetwas drin steht?
Da ich jetzt alle namen nach der reihe, wann man auf absenden klickt in eine txt. datein eingelesen habe, kann ich sie immer wieder auslesen. Hab zu beginn zu kompliziert gedacht. Und das es nicht geklappt hätte hab ich dank dir erfahren sonst würde ich es noch immer ausprobieren

Das neue problem wäre später im chatfenster anzeigen zukönnen wer was geschrieben hat. Wie soll ich den richtigen namen zur nachricht immer auslesen.

meine code fürs erstellen der namenslist lautet wie folgt:
PHP-Code:
<html lang="de">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-1250">
<title>Willkommen im Chat 1.0</title>
<link rel="stylesheet" type="text/css" href="phpkid.css">
</head>
<body>
      <form action= "" method= "POST" > 
      <input type= "text" value="Peter" name= "input_value" > 
      <input type= "submit" name= "submit" > 
<?php 
$name
=$_POST["input_value"];/*auslesen des textfeldes*/

$liste=explode(",",file_get_contents("chatnamen.txt","r+"));/*$liste wird 
ein array aus der txt. datei, bei der alle namen durch ein ',' getrennt werden ausgelesen werden*/
echo $liste[1];/*ausgabe des Namens an stelle x*/

$liste[]=$name;/*array um $name verlängern*/
$liste=implode(",",$liste);/*den array $liste in einen string verwandeln
 und die namen mit einem ',' trennen*/
$cn=fopen("chatnamen.txt","w");/*txt. öffnen und komplett leeren*/
fputs($cn,$liste);     /*Den String $liste in $cn(unsere txt.Datei) 
reinschreiben*/
?> 


</form>
</body>
</html>
  Mit Zitat antworten
Alt 23.09.2011, 14:10  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.234
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Du bist dir sicher, dass du das über Dateien machen willst? Du musst halt in die Datei schreiben, wer was geschrieben hat. Vielleicht solltest du, um ein Array in einen String zu verwandeln und zurück besser die Funktionen serialize und unserialize verwenden. Damit wirst du deutlich flexibler sein. Beispielsweise kann dann in $liste folgendes passieren:
PHP-Code:
$liste[] = array($name$nachricht); 
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 23.09.2011, 19:21  
Caner
Gast
 
Beiträge: n/a
Standard

ich hab ja vor nach dem login in den chat den Nutzer umzuleiten. Im chatroom soll dann das gleiche fenster für jeden angezeigt werden, sagen wir 3 nutzer, aber es soll intern sein name abgespeichert werden und automatisch beim chatten immer dazugeschrieben werden.

Müsste ich mit serialize eine einzige seite haben?
Weil mein name wir nur zur zeit in einer txt.datei sein und die variable $name wird immer wieder überschrieben.

PS: Könnte ich $name in einer session speichern, dann hätte jeder nutzer in seinem explorer eine eigene session und der name wäre so immer der, der in seinem script abgespeichert wurde. oder? weil es laufen z.bsp 3 scripte parallel (laufen sie unabhängig voneinander?)
  Mit Zitat antworten
Alt 23.09.2011, 21:28  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.234
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

http://www.php.de/php-einsteiger/489...nsammlung.html (Lerne Grundlagen | Quellensammlung)
Es ist unklug, etwas zu versuchen, wenn man noch nicht wirklich verstanden hat, was man da versucht. Bevor du dich an sowas wie einen Chat wagst, solltest du wissen, wie man Formulare richtig umsetzt und was Sessions sind.
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 25.09.2011, 15:48  
Caner
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von mepeisen Beitrag anzeigen
http://www.php.de/php-einsteiger/489...nsammlung.html (Lerne Grundlagen | Quellensammlung)
Es ist unklug, etwas zu versuchen, wenn man noch nicht wirklich verstanden hat, was man da versucht. Bevor du dich an sowas wie einen Chat wagst, solltest du wissen, wie man Formulare richtig umsetzt und was Sessions sind.
Ich habe mich mal über SID's erkundigt und habe gelesen wie man eine SID übermittelt( GET;POST). Habe auch das mit htmlspecialchars gefunden, aber hat nicht geklappt.
PHP-Code:
SESSION_START();
$_session['Name']=$name;
?> 
<?php
echo '<a href="nextpage.php?section=foobar&amp;'.htmlspecialchars(SID).'">Link</a>';
?>
auf der nächsten seite gehts weiter mit:
PHP-Code:
<?php 
session_start
();
$name=$_session['Name'];
echo 
$name;
?>
Aber ich versteh noch nicht ganz wie php eine SID erstellt oder ob ich sie erstelle und ob die SID jetzt im URL enthalten ist oder net. Falls ja, ob php automatisch drauf zugreift (was anscheinend geschehen soll, falls ein SID übermittelt wurde) oder dann eine neue Session startet.

PS: Mein ziel ist eine simpler chat nur mit php und html, da ich ihn für die schule mache und er so einfach wie möglich sein soll.

wenn ich es mit SID hinbekomme brauche ich mein explode/implode funciton nicht mehr. (höchsten für kleine extras)
  Mit Zitat antworten
Alt 25.09.2011, 15:49  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.234
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

session_id
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 25.09.2011, 20:30  
Caner
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von mepeisen Beitrag anzeigen
inwiefern kann ich das jetzt einbauen? mit

PHP-Code:
<?php 
session_id
();
session_start();
$name=$_session['Name'];
echo 
$name;
?>
hat es nicht geklappt. Ich glaub ich muss noch auf dem vorherigen script etwas machen. Und das steht nicht bei dem Link dabei =(

Und nebenbei wie kann ich die sid selbst festlegen?Im netz stand etwas von verschieden varianten.
Mein gedanke wäre einfach bei session_start die klammer zu beschreiben (stimmt das?).

kannste nicht kurz mir den ansatz sagen. was ich wo stehen haben muss. Den rest werde ich mir herleiten. Muss nur wissen wie man die SID übermittelt. Danke
  Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Array werte zusammen rechnen fabi288 PHP Einsteiger 13 03.01.2011 16:08
mehrdimensionales array inhalte tauschen pidaman PHP Tipps 2010 18 27.08.2010 16:58
[Erledigt] Sortierung mehrerer Arrays philosapiens PHP Tipps 2010 16 08.06.2010 05:22
IE8 verliert Session Lenki PHP-Fortgeschrittene 10 25.04.2010 01:10
PHPLot von der Datenbank zum mehrdimensionalen Array mannimammut PHP Tipps 2009 1 15.12.2009 10:40
[Erledigt] array sortieren PHP Tipps 2004 17 13.05.2009 10:44
Menü mit Unterpunkten supertramp Beitragsarchiv 7 18.10.2005 22:40
Sortieren von Arrays mit mehr als 2 Dimensionen (Teil 2) Buhmann PHP-Fortgeschrittene 4 12.07.2005 14:03
Array wie auslesen? PHP Tipps 2005 7 07.03.2005 11:43
[Erledigt] Mehrdimensionales Array in eindimensionales Array umwandeln PHP-Fortgeschrittene 3 03.01.2005 22:31
Abfrage mit id aus anderer Tabelle suter PHP Tipps 2004-2 15 16.12.2004 14:25
bbcode - Classe PHP-Fortgeschrittene 4 18.09.2004 17:30

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
einfacher login, einfacher login html script, einfacher login code, einfacher chat html textbasis, login chat quellcode, php chat namen anzeige, php einfacher login auslesen, skype chat mit php auslesen, einfacher html chat code, einfacher chat php

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:05 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum