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! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 05-08-2008, 02:00
Change
 Registrierter Benutzer
Links : Onlinestatus : Change ist offline
Registriert seit: Aug 2008
Beiträge: 31
Change ist zur Zeit noch ein unbeschriebenes Blatt
Standard bestimmte zeilen löschen

Hallo, ich habe mir ein kleines Ticket-Script gebastelt!

muss dazu sagen das ich noch ein ziemlicher Frischling bin!

Ich trage die Supportanfragen der Tickets in meine Datei anfragen.html ein!

Die Frage ist jetzt, wie kann ich mit einem anderen Script zeilen aus dieser datei lösche?

ich trage sie ein mit:

PHP-Code:
<?php
$art
=$_POST['art'];
$vorname=$_POST['vorname'];
$name=$_POST['name'];
$ort=$_POST['ort'];
$land=$_POST['land'];
$ausgabe"<hr>".$art."\r\n".$vorname."\r\n".$name.$ort."\r\n".$land."<hr>";
$datei=fopen("anfragen.html","a");
$output=fwrite($datei,$ausgabe);
fclose($datei);
?>
jetzt suche ich ein script..sowas wie das hier:
PHP-Code:
<form action="3.php" method="post">zu löschende Zeile: #
<input type="text" name="fertig" MAXLENGTH="2" SIZE="1" /><input type="submit" /></form>
<?php
$delzeile
=$_POST['fertig'];

$datei=fopen("namen.html","a");
$datei2=file('namen.html');
fdelete=$datei2[$delzeile];
fclose($datei);
?>
Das ist natürlich jetzt eine theoretische vorstellung!!!!!!
Ich weiß das das script so nicht funktioniert!
Aber ich hoffe ihr versteht mich!

Hoffe auf eine hilfreiche Antwort,
Vielen Dank schonmal, Change

Geändert von Change (05-08-2008 um 14:01 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 05-08-2008, 02:11
Blackgreetz
 PHP Junior
Links : Onlinestatus : Blackgreetz ist offline
Registriert seit: Oct 2005
Beiträge: 901
Blackgreetz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hallo,

bitte lies dir erstmal die Regeln durch "vor dem posten"..

Dann: Guck dir mal das Modell einer CSV-Datei an..
Das wäre viel einfacher zu realisieren und auch sinnvoller zu speichern..

Natürlich müsstest du das ganze dann auch anders auslesen..

mfg
Mit Zitat antworten
  #3 (permalink)  
Alt 05-08-2008, 02:18
Change
 Registrierter Benutzer
Links : Onlinestatus : Change ist offline
Registriert seit: Aug 2008
Beiträge: 31
Change ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich verstehe nicht ganz was du meinst!
Zum einen welche Forumregel ich verstoßen habe und zum Anderen
was eine CSV Datei ist!

Geht das nicht mit PHP???

MfG Change
Mit Zitat antworten
  #4 (permalink)  
Alt 05-08-2008, 02:26
Blackgreetz
 PHP Junior
Links : Onlinestatus : Blackgreetz ist offline
Registriert seit: Oct 2005
Beiträge: 901
Blackgreetz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hallo,

Regeln: http://php-resource.de/forum/showthr...threadid=50454
-> Keine horizontalen Scrollbalken (ich hab einen bei 1280x800)

Natürlich geht das mit PHP, aber dein Speichermodell ist etwas murks..

Deshalb wollte ich dir das Modell der csv-datei ans Herz legen.

Da werden Werte durch ein Trennzeichen gespeichert und 1 Datensatz bekommt genau 1 Zeile.
Einlesen, löschen etwas. kein Problem.

Da es nur ein Modell ist und keine Sprache, ist natürlich die Sprache dafür php Infos dazu hätte auch google gegeben


Bei deinem Modell müsste man das ganze recht kompliziert gestalten.

mfg
ps: hatte "vor dem posten" wohl auf den falschen thread verwiesen, sry
Mit Zitat antworten
  #5 (permalink)  
Alt 05-08-2008, 03:38
Change
 Registrierter Benutzer
Links : Onlinestatus : Change ist offline
Registriert seit: Aug 2008
Beiträge: 31
Change ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Regeln: http://php-resource.de/forum/showth...&threadid=50454
-> Keine horizontalen Scrollbalken (ich hab einen bei 1280x800)
Entschuldige, ich dachte php-scripts werden in einem extra kasten zusammengehalten, wie in anderen Foren!

csv hört sich gut an!
Wo kann man sich denn da nötige Wissen aneignen?
Gibt es da irgendein gutes Tutorial was empfohlen werden kann?

Vielen Dank für die Antwort, Change
Mit Zitat antworten
  #6 (permalink)  
Alt 05-08-2008, 12:40
Blackgreetz
 PHP Junior
Links : Onlinestatus : Blackgreetz ist offline
Registriert seit: Oct 2005
Beiträge: 901
Blackgreetz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Generell musst du dir nur Wissen über das Arbeiten mit Dateien aneignen.

z.b.:
http://schattenbaum.net/php/
http://peterkropff.de

Würde zu folgendes raten:

Speichern: fopen(), fwrite(), fclose() (so wie du es eigentlich schon hast nur muss der speicher-string anders aussehen (siehe wikipedia - csv)

Auslesen: file(), und zum anzeigen for() und explode()

Löschen: siehe auslesen + formular zum absenden (ID ^= Zeile) + file(), unset(), implode() + speichern

mfg
ps: php scripte werden nicht automatisch umgebrochen .. wäre also nett, wenn du deinen beitrag oben bearbeiten würdest.
Mit Zitat antworten
  #7 (permalink)  
Alt 05-08-2008, 12:41
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Also ich würde ja hier zu einer Datenbank raten ...
Mit Zitat antworten
  #8 (permalink)  
Alt 05-08-2008, 12:43
Blackgreetz
 PHP Junior
Links : Onlinestatus : Blackgreetz ist offline
Registriert seit: Oct 2005
Beiträge: 901
Blackgreetz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von unset
Also ich würde ja hier zu einer Datenbank raten ...
Meinst nicht, dass es Change überfordern würde?

Wäre natürlich einfacher und so, aber bei Anfängern ist das so eine Sache.

@ Change: Infos zu Datenbank (mysql) gibt es auch auf den beiden links..

mfg
Mit Zitat antworten
  #9 (permalink)  
Alt 05-08-2008, 12:50
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Möchtest du den Anfänger dann auch direkt mal über Race Conditions aufklären, die er beim handling mit Flatfiles zu beachten hat? Mit Datenbanken geht das wesentlich flotter und einfacher. Und man muss selbst nicht so oft das Rad neu erfinden.

Außerdem ist CSV ein Transport- und kein Storeformat.
Mit Zitat antworten
  #10 (permalink)  
Alt 05-08-2008, 12:58
Blackgreetz
 PHP Junior
Links : Onlinestatus : Blackgreetz ist offline
Registriert seit: Oct 2005
Beiträge: 901
Blackgreetz ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von unset
Möchtest du den Anfänger dann auch direkt mal über Race Conditions aufklären, die er beim handling mit Flatfiles zu beachten hat?
Bin eigentlich davon ausgegangen, dass nur er/sie damit arbeitet, aber gut - hat er nicht gesagt...

Zitat:
Mit Datenbanken geht das wesentlich flotter und einfacher. Und man muss selbst nicht so oft das Rad neu erfinden.
Stimmt schon soweit..

Zitat:
Außerdem ist CSV ein Transport- und kein Storeformat.
Ich meinte zwar auch nur das CSV-Modell und nicht die ".csv", macht aber ansich keinen Unterschied, insofern - stimmt schon..

mfg
Mit Zitat antworten
  #11 (permalink)  
Alt 05-08-2008, 13:09
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Beiträge: 642
UzumakiNaruto befindet sich auf einem aufstrebenden Ast
Standard

ich würde auch eher zu mysql raten.

ein ticket-system wird eine gewisse größe annehmen und für die performance und der übersicht eignet sich eine datenbank besser.

wenn ich bedenke wielange ich gebraucht habe um das mit den dateien richtig hinzubekommen .. in der zeit hätte ich damals auch datenbanken lernen können (std dinge wie simple inserts, updates und delete)
__________________
Gruß
Uzu

private Homepage
Mit Zitat antworten
  #12 (permalink)  
Alt 05-08-2008, 15:04
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von UzumakiNaruto
ich würde auch eher zu mysql raten.
Das mein ich auch. Es ist sicher besser (und viel einfacher ), ein bestehendes Datenbanksystem zu benutzen, als zu versuchen - und was du willst ist ein entsprechender Versuch im Kleinen - eines nachzubauen.
__________________
Gruss
H2O
Mit Zitat antworten
  #13 (permalink)  
Alt 05-08-2008, 15:59
Change
 Registrierter Benutzer
Links : Onlinestatus : Change ist offline
Registriert seit: Aug 2008
Beiträge: 31
Change ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das Problem ist, das ich kein ganzes Tickets-sytem übernehmen möchte!

Ich brauch das ganze extra Zeugs nicht!!!!

Ich möchte nur ein script zum eingeben
und danach wieder auslesen & evt. löschen!

Eingeben:
PHP-Code:
<form action="2.php" method="post">
<
table>
   <
tr>
     <
td>Option:</td>
     <
td> <select name="art" size="10" multiple="multiple">
    <
option value="Support1">Support1</option>
    <
option value="Support2">Support2</option>
    <
option value="Support3">Support3</option>
    <
option value="Support4">Support4</option>
    <
option value="Support5">Support5</option>
    <
option value="Support6">Support6</option>
</
select>
       </
td>
     </
tr>  <br />
     <
tr>
       <
td >Vorname:</td>
       <
td>  <input type="text" name="vorname" /></td>
     </
tr>
          <
tr>
       <
td >Nachname:</td>
       <
td>  <input type="text" name="nachname" /></td>
     </
tr>
          <
tr>
       <
td >Ort:</td>
       <
td>  <input type="text" name="ort" /></td>
     </
tr>
          <
tr>
       <
td >Land:</td>
       <
td> <select name="land">
    <
option value="Deutschland">Deutschland</option>
    <
option value="Österreich">Österreich</option>
</
select>
        </
td>
     </
tr>
     <
tr>
          <
td> <input type="submit" /></td>
    </
tr>
 </
table>
</
form
Und nun muss ich halt das ganze in eine Tabelle einfügen (wenn ich MySQL nehme!)
PHP-Code:
<?php
    
// config.php
    
error_reporting(E_ALL);

    
define('MYSQL_HOST',     'localhost');
    
define('MYSQL_USER',     'root');
    
define('MYSQL_PASS',     '********');
    
define('MYSQL_DATABASE''db1');


$art=$_POST['art'];
$vorname=$_POST['vorname'];
$name=$_POST['name'];
$ort=$_POST['ort'];
$land=$_POST['land']; 


    
$sql "INSERT INTO tickets
                (Art, Vorname, Nachname, Ort, Land)
            VALUES
                ('"
.addslashes(htmlspecialchars($_POST['art']))."',
                '"
.addslashes(htmlspecialchars($_POST['vorname']))."',
                '"
.addslashes(htmlspecialchars($_POST['nachname']))."',
                '"
.addslashes(htmlspecialchars($_POST['ort']))."',
                '"
.addslashes(htmlspecialchars($_POST['land']))."',
                NOW())"
;

    
mysql_query($sql) OR die(mysql_error());

?>
geht das so?
Hoffe auf eine hilfreiche Antwort, Change
Mit Zitat antworten
  #14 (permalink)  
Alt 05-08-2008, 16:33
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ungefähr ist das OK. Es fehlt noch die Verbindung zur DB (mysql_connect() und mysql_select_db() ). Das würde ich allerdings in eine andere Datei auslagern.
Des weiteren würde ich der Tabelle (ich gehe davon aus, dass du diese definiert hast) noch eine eindeutige ID als Primary Key mitgibst, am besten als AUTOINCREMENT.
addslashes(htmlspecialchars()) bringt hier nicht viel, dafür mysql_real_escape_string () ,
PHP-Code:
<?php
// include 'config.php';
    
error_reporting(E_ALL);

    
define('MYSQL_HOST',     'localhost');
    
define('MYSQL_USER',     'root');
    
define('MYSQL_PASS',     '********');
    
define('MYSQL_DATABASE''db1');
    
    
$conn mysql_connect(MYSQL_HOSTMYSQL_USERMYSQL_PASS) or exit('Keine Verbindung zur Datenbank');
    
mysql_select_db(MYSQL_DATABASE) or exit('Datenbank ' MYSQL_DATABASE ' existiert nicht');
// Ende config.php


$art mysql_real_escape_string($_POST['art']);
$vorname mysql_real_escape_string($_POST['vorname']);
$name mysql_real_escape_string($_POST['name']);
$ort mysql_real_escape_string($_POST['ort']);
$land mysql_real_escape_string($_POST['land']); 


$sql "
    INSERT INTO tickets(
        art, 
        vorname, 
        nachname, 
        ort, 
        land,
        datum
    )
    VALUES(    
        '$art',
        '$vorname',
        '$nachname',
        '$ort',
        '$land',
        NOW()
    )"
;
mysql_query($sql) OR die(mysql_error());
?>
__________________
Gruss
H2O
Mit Zitat antworten
  #15 (permalink)  
Alt 05-08-2008, 16:34
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Beiträge: 642
UzumakiNaruto befindet sich auf einem aufstrebenden Ast
Standard

addslashes(htmlspecialchars($_POST['art']))
kannst du sein lassen. $art würde reichen

$art=$_POST['art'];
und danach arbeitest du wieder mit $_POST['art']???

ich benutze eher die UPDATE methode, damit mein INSERT übersichtlich ist:

PHP-Code:
# abfrage ob die zeichen erlaubt sind wäre auch nicht schlecht
if (isset($_POST['art'])    $art      $_POST['art'];
if (isset(
$_POST['vorname'$vorname  $_POST['vorname'];
if (isset(
$_POST['name']    $nachname $_POST['nachname'];
if (isset(
$_POST['ort']     $ort      $_POST['ort'];
if (isset(
$_POST['land']    $land     $_POST['land'];

$sql "
INSERT INTO tickets SET
   Art = '"
.$art."',
   Vorname = '"
.$vorname."',
   Nachname = '"
.$nachname."',
   Ort = '"
.$ort."',
   Land = '"
.$land."';
"

den du willst in deinem code 6 einträge machen .. die aber in 5 felder schreiben ;-) .. bei meiner "art" kann dir sowas nicht passieren.
__________________
Gruß
Uzu

private Homepage
Mit Zitat antworten
Antwort

Lesezeichen


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

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

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:27 Uhr.