ebiz-webhosting
- Ad -
php-resource



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

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 

 


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! Post your PHP questions here!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 14-08-2009, 12:41
Alain_S_
 Registrierter Benutzer
Links : Onlinestatus : Alain_S_ ist offline
Registriert seit: Jul 2009
Beiträge: 63
Alain_S_ befindet sich auf einem aufstrebenden Ast
Standard Ein bereits beschriebenes Feld in einer dynamischen Seite sperren

Hallo
Ich versuche, in meiner dynamischen Tabelle, die ich mit einem Formular aktualisieren kann ein bereits beschriebenes Feld zu sperren, damit es nicht mehr überschrieben werden kann. ich vermute es in dem folgenden Bereich einstellen zu können, weiß aber nicht wie. kann mir da jemand weiterhelfen?

PHP-Code:
?><?php
function GetSQLValueString($theValue$theType$theDefinedValue ""$theNotDefinedValue ""
{
  
$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;
  switch (
$theType) {
    case 
"text":
      
$theValue = ($theValue != "") ? "'" $theValue "'" "NULL";
      break;

Gruß
Mit Zitat antworten
  #2 (permalink)  
Alt 14-08-2009, 13:01
streuner
 Registrierter Benutzer
Links : Onlinestatus : streuner ist offline
Registriert seit: Aug 2009
Ort: Lüneburg
Beiträge: 461
streuner befindet sich auf einem aufstrebenden Ast
Standard Hm...

Hi.

Bin mir nicht sicher, ob ich die Problematik richtig verstehe. Habe zwei Lösungsansätze:

1. Wenn du über ein Formular arbeitest, kannst Du (z.B.) das Eingabe Textfeld danach einfach sperren (einfach auf readonly setzen)
2. extra Spalte in der DB mit einem Bolleaschen Wert, der nach einem Update geändert wird und bei einem SQL Befehl geprüft wird.

mfg streuner
Mit Zitat antworten
  #3 (permalink)  
Alt 14-08-2009, 13:34
Alain_S_
 Registrierter Benutzer
Links : Onlinestatus : Alain_S_ ist offline
Registriert seit: Jul 2009
Beiträge: 63
Alain_S_ befindet sich auf einem aufstrebenden Ast
Standard

Ja ich du hast mich richtig verstanden :-)
die 1. Variante scheint die richtige für mich zu sein, weil ich das feld über ein anderes Forlulad dann wieder löschen muss.
An welcher Stelle setze ich das Textfeld denn auf readonly?
Das wären zwei Ausschnitte, aus meiner Formular.

PHP-Code:
if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form1")) {
  $updateSQL = sprintf("UPDATE christines_termine_1 SET fehlt=%s WHERE Trainer=%s",
                       GetSQLValueString($_POST['fehlt'], "text"),
                       GetSQLValueString($_POST['Trainer'], "text"));
  mysql_select_db($database_christines_termine_1, $christines_termine_1);
  $Result1 = mysql_query($updateSQL, $christines_termine_1) or die(mysql_error());
 
 
 
<input type="text" name="fehlt" value="<?php echo $row_christines_termine_1['fehlt']; ?>" size="32">

Geändert von Alain_S_ (14-08-2009 um 13:37 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 14-08-2009, 14:39
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 24.486
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Alain_S_ Beitrag anzeigen
An welcher Stelle setze ich das Textfeld denn auf readonly?
Wie wär's denn mit der, an der du's ausgibst?

http://de.selfhtml.org/html/formular...e.htm#nurlesen
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #5 (permalink)  
Alt 14-08-2009, 14:43
streuner
 Registrierter Benutzer
Links : Onlinestatus : streuner ist offline
Registriert seit: Aug 2009
Ort: Lüneburg
Beiträge: 461
streuner befindet sich auf einem aufstrebenden Ast
Standard

Gut! Geht es darum, dass das Textfeld insgesamt nicht mehr bearbeitbar ist, oder nur temporär (für die aktuelle Session)? Wenn nur für die Session, füllst du ein Hidden Feld mit einem Parameter und fragst ab, ob der existiert, wenn ja setzt du das Textfeld auf "readonly" (oder disabled), oder du füllst ne Session Variable.
Wenn das dauerhaft (bei jedem Aufruf) sein soll, kommst du um eine Hinterlegung eines Wertes (z.B.in eine Datenbank) nicht drumherum. Beim Update setzt du dann in einer extra Spalte einen Booleaschen Wert (z.B. "1", "ja"...etc.) und lässt ihn bei einer SELECT Anweisung auslesen und befüllst damit ein Variable. Mit if fragst du dann im Textfeld, ab ob die Variable folgenden Wert hat...!

Beispiel:

PHP-Code:
$qry = mysql_query("SELECT meinepruefungsspalte FROM meineTabelle, $datenbankconnection);

while ($row = mysql_fetch_array($qry, MYSQL_ASSOC)){
 $meinepruefvariable = $row["meinepruefspalte"];
}
//...

//Beispiel
<input type="text" name="fehlt" value="<?php echo $row_christines_termine_1['fehlt']; ?>" size="32" <?php if ($meinepruefvariable == "1"){ echo "readonly"; } ?>>
mfg streuner
Mit Zitat antworten
  #6 (permalink)  
Alt 14-08-2009, 15:48
Alain_S_
 Registrierter Benutzer
Links : Onlinestatus : Alain_S_ ist offline
Registriert seit: Jul 2009
Beiträge: 63
Alain_S_ befindet sich auf einem aufstrebenden Ast
Standard

Ok, dann muss ich das doch bisschen genauer erklären.
Ich habe eine Seite, auf der die Felder mit einem Formular beschrieben werden können. Auf dieser Seite dürfen die bereits beschriebenen Felder nicht überschrieben werden.
Und dann habe ich eine zweite Seite für den "Admin", auf der er die Einträge verändern und löschen kann.
Dashalb muss ich die sperre in das Fromular der ersten Seite einsetzen.
Gruß
Mit Zitat antworten
  #7 (permalink)  
Alt 14-08-2009, 16:00
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 24.486
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Alain_S_ Beitrag anzeigen
Ich habe eine Seite, auf der die Felder mit einem Formular beschrieben werden können. Auf dieser Seite dürfen die bereits beschriebenen Felder nicht überschrieben werden.
Dann stellt sich zuerst mal die Frage, ob sie dann überhaupt Formularfelder sein müssen.
Zitat:
Und dann habe ich eine zweite Seite für den "Admin", auf der er die Einträge verändern und löschen kann.
Dashalb muss ich die sperre in das Fromular der ersten Seite einsetzen.
Dass diese "Sperre" aber für die Katz' ist, wenn du die übergebenen Werte dann trotzdem auswertest, ist dir hoffentlich bewusst.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #8 (permalink)  
Alt 14-08-2009, 16:11
Alain_S_
 Registrierter Benutzer
Links : Onlinestatus : Alain_S_ ist offline
Registriert seit: Jul 2009
Beiträge: 63
Alain_S_ befindet sich auf einem aufstrebenden Ast
Standard

Es geht mir auf der ersten Seite nur darum, dass die Felder von dieser Seite nicht überschrieben werden können. Das gibt ein Terminkalender, und sonst könnten die Leute Termine einfach überschreiben. Aber die Mitarbeiter benötigen eine Möglichkeit, falsche Termine zu löschen oder zu ändern. Wenn ich dich richtig verstanden habe, müsste dein Hinweis entkräftet sein oder?
Mit Zitat antworten
  #9 (permalink)  
Alt 14-08-2009, 17:50
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 24.486
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Kommt darauf an, ob du die Werte, die ggf. beim Server ankommen und die du für unverändert hältst, verarbeitest oder nicht.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #10 (permalink)  
Alt 17-08-2009, 08:52
streuner
 Registrierter Benutzer
Links : Onlinestatus : streuner ist offline
Registriert seit: Aug 2009
Ort: Lüneburg
Beiträge: 461
streuner befindet sich auf einem aufstrebenden Ast
Standard

" Es geht mir auf der ersten Seite nur darum, dass die Felder von dieser Seite nicht überschrieben werden können. Das gibt ein Terminkalender, und sonst könnten die Leute Termine einfach überschreiben. Aber die Mitarbeiter benötigen eine Möglichkeit, falsche Termine zu löschen oder zu ändern."

Wenn du die Daten nur darstellen willst, kannst dus als Tabelle ohne Textfelder oder sonstige Eingabemöglichkeit machen. (siehe auch Kommentar wahsaga!) Wenn irgendwo ein Termin (Datensatz) in einem Datumsfeld angezeigt wird, machst du einfach noch 2 links darunter (als Beispiel) einmal löschen und einmal bearbeiten. Das wertest du dann mit ner Funktion jeweils aus! Kannst auch 2 allg. Buttons unter dem Formular machen (löschen, bearbeiten) und man wählt durch klicken von Radio Boxen das entsprechende Datum/Eintrag aus. Ist es das?

mfg streuner
__________________
Erst wenn der letzte FTP Server kostenpflichtig, der letzte GNU-Sourcecode verkauft, der letzte Algorithmus patentiert,
der letzte Netzknoten verkommerzialisert ist, werdet Ihr merken, dass Geld nicht von alleine programmiert.

"Diese Software verdient die 3 großen GGG: --- Gesehen --- Gelacht --- Gelöscht ---"
Mit Zitat antworten
  #11 (permalink)  
Alt 20-08-2009, 17:01
Alain_S_
 Registrierter Benutzer
Links : Onlinestatus : Alain_S_ ist offline
Registriert seit: Jul 2009
Beiträge: 63
Alain_S_ befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von streuner Beitrag anzeigen
"
Wenn du die Daten nur darstellen willst, kannst dus als Tabelle ohne Textfelder oder sonstige Eingabemöglichkeit machen. (siehe auch Kommentar wahsaga!) Wenn irgendwo ein Termin (Datensatz) in einem Datumsfeld angezeigt wird, machst du einfach noch 2 links darunter (als Beispiel) einmal löschen und einmal bearbeiten. Das wertest du dann mit ner Funktion jeweils aus! Kannst auch 2 allg. Buttons unter dem Formular machen (löschen, bearbeiten) und man wählt durch klicken von Radio Boxen das entsprechende Datum/Eintrag aus. Ist es das?

mfg streuner

Ja das mit Radio Boxen ist sehr praktisch, werde es übernehmen und den Anmeldenamen bis dahin durchschleusen, dass sich die Leute nur mit ihrem Anmeldenamen anmelden können.

Mein Problem, dass die Leute auch mit diesen Radio Boxen ein bereits beschriebenes Terminfeld überschreiben können besteht trotzdem noch. Das Formuler mit Radio boxen darf ein Terminfeld, in das sich bereits eine andere Person eingetragen hat nicht überschreiben können. Es darf also nur leere Terminfelder beschreiben und bereits beschreibene nicht überschreiben.
Gruß
Mit Zitat antworten
  #12 (permalink)  
Alt 20-08-2009, 17:46
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 24.486
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Alain_S_ Beitrag anzeigen
Mein Problem, dass die Leute auch mit diesen Radio Boxen ein bereits beschriebenes Terminfeld überschreiben können besteht trotzdem noch.
Ja dann gebe ihnen diese Möglichkeit halt einfach nicht!

Zitat:
Das Formuler mit Radio boxen darf ein Terminfeld, in das sich bereits eine andere Person eingetragen hat nicht überschreiben können. Es darf also nur leere Terminfelder beschreiben und bereits beschreibene nicht überschreiben.
Zu prüfen, ob ein "Terminfeld" bereits belegt ist, oder einen hereinkommenden Belegungswunsch akzeptieren darf, ist letztendlich Aufgabe des serverseitigen Scriptes - ganz egal, wie auch immer die clientseitige Darstellung aussehen mag.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #13 (permalink)  
Alt 20-08-2009, 18:08
Alain_S_
 Registrierter Benutzer
Links : Onlinestatus : Alain_S_ ist offline
Registriert seit: Jul 2009
Beiträge: 63
Alain_S_ befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von wahsaga Beitrag anzeigen
Ja dann gebe ihnen diese Möglichkeit halt einfach nicht!


Zu prüfen, ob ein "Terminfeld" bereits belegt ist, oder einen hereinkommenden Belegungswunsch akzeptieren darf, ist letztendlich Aufgabe des serverseitigen Scriptes - ganz egal, wie auch immer die clientseitige Darstellung aussehen mag.
Und wie verweigere ich ihnen dies? Es sollte aber eine formularbedingte Sperre sein, weil ich dann über ein anderes Formular auch keine änderungen mehr machen kann.
So wie ich dich verstanden habe, würde ich diese Einstellung auf dem Server machen und dann kann ich selbst über ein anderes Formular auch keine änderungen mahr machen oder?
Mit Zitat antworten
  #14 (permalink)  
Alt 20-08-2009, 18:32
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 24.486
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Es gibt keine "formularbedingte" Sperre.

Du kannst nicht davon ausgehen, dass die Daten, die an verarbeitendes Script geschickt werden, überhaupt von "deinem" Formular kommen - sie kommen irgendwo her. Woher, weisst du nicht im geringsten.

Jedes serverseitige Script hat bei jedem Aufruf zu überprüfen, ob die Daten, die ihm übermittelt wurden, legitim sind.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #15 (permalink)  
Alt 20-08-2009, 19:01
Alain_S_
 Registrierter Benutzer
Links : Onlinestatus : Alain_S_ ist offline
Registriert seit: Jul 2009
Beiträge: 63
Alain_S_ befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von wahsaga Beitrag anzeigen
Es gibt keine "formularbedingte" Sperre.

Du kannst nicht davon ausgehen, dass die Daten, die an verarbeitendes Script geschickt werden, überhaupt von "deinem" Formular kommen - sie kommen irgendwo her. Woher, weisst du nicht im geringsten.

Jedes serverseitige Script hat bei jedem Aufruf zu überprüfen, ob die Daten, die ihm übermittelt wurden, legitim sind.
mit dem serverseitigen Script habe ich keine Erfahrung.
Ich verwende XAMPP also Apache. Ist das sehr schwierig? Und wie ist das dann, wenn die Seite fertig ist mit dem hochladen der Seite auf den Webserver?
Wenn die Sperre des Feldes beim Server ist, wie kann ich als Administrator dann die Felder bearbeiten? nur noch direkt in der Datenbank?
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
Momentaufnahme einer dynamischen Seite auslesen und in statische HTML Seite speichern Schkii PHP Developer Forum 4 07-04-2008 15:00
Kann man einer einzigen IP den gesamten Zugang zu einer webseite sperren/umleiten WeTogether Appz und Script Gesuche 3 14-11-2006 12:23
Input Feld für daten - eingabe sperren phpfreak HTML, JavaScript, AJAX und CSS 3 02-12-2004 12:52
Seite sperren Benji PHP Developer Forum 1 28-10-2004 08:06
mit onunload bereits geöffnete seite wieder laden Clubingman HTML, JavaScript, AJAX und CSS 2 13-04-2004 13:35

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

MariaDB 5.5 veröffentlicht
MariaDB 5.5 veröffentlichtDie freie MySQL-Alternative MariaDB wurde in der stabilen Version 5.5.23 veröffentlicht und soll einige Verbesserungen gegenüber Oracles Communityversion von MySQL mitbringen.

16.04.2012 | Berni

Deutsche Yii Framework Community
Deutsche Yii Framework CommunitySeit dem 19.03.2012 gibt es für die Yii PHP Framework Community ein deutsches Zuhause.

20.03.2012 | dhcomputer

 

Aktuelle PHP Scripte

EM 2012 Tipp-Spiel ansehen EM 2012 Tipp-Spiel

Online Tipp-Spiel zur Fussball Europameisterschaft 2012, basierend auf php-Script mit hinterlegter mySql-Datenbank

27.05.2012 tippimnetz | Kategorie: PHP/ Spiele
Advanced Login ansehen Advanced Login

Login-System und Kundenverwaltung, die sich spielend leicht in bestehende Webseiten einbauen lässt und einen enormen Funktionsumfang bietet. Ihre eigene Webseite muss mit Advanced Login nicht umständlich an ein fertiges System angepasst werden.

25.05.2012 Madden | Kategorie: PHP/ Kundenverwaltung
BROM CMS/BelCal 3 ansehen BROM CMS/BelCal 3

Spezielles CMS für Betreiber von Ferienwohnungen. Komplette Seitenerstellung online, Verwaltung mehrerer Objekte, Reservierungssystem mit sofortigem Abgleich im Belegungskalender und vieles mehr bietet dieses Content Management System.

25.05.2012 belcal2 | Kategorie: PHP/ CMS
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 13:02 Uhr.