php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > Fragen zu Installation & Konfiguration (LAMP, WAMP & Co.)
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


Fragen zu Installation & Konfiguration (LAMP, WAMP & Co.) Probleme, Apache mit PHP oder MySQL zum Laufen zu bringen? Anpassung an .htaccess, httpd.conf oder php.ini funktionieren nicht? In diesem Forum könnt ihr eure Erfahrungen austauschen.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 2 Stimmen, 5,00 durchschnittlich.
  #46 (permalink)  
Alt 18-07-2011, 17:50
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Code:
$database = new PDO("firebird:dbname=C:\\Apache2\\htdocs\\guestbook_entries.GDB;host=localhost","SYSDBA", "masterkey");
Code ist jetzt lesbarer
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #47 (permalink)  
Alt 18-07-2011, 17:55
Jiraiya
 Registrierter Benutzer
Links : Onlinestatus : Jiraiya ist offline
Registriert seit: Jul 2011
Beiträge: 59
Jiraiya befindet sich auf einem aufstrebenden Ast
Standard

da kann ich aber nicht für garantieren das das auch stimmt.!
also die variante die ich habe haut zumindest hin und gibt genau das aus was ich auch geschrieben habe.

so is erledigt. die ausgabe ist angepasst und der Quelltext mit den neusten änderungen übernommen.
wenn dir noch was einfällt schreib ruhig. spätestens morgen werd ich bestimmt eh wieder ins forum gehen. da gehts ja dann um die eintragung und das interagieren mit der datenbank

Geändert von Jiraiya (18-07-2011 um 18:05 Uhr)
Mit Zitat antworten
  #48 (permalink)  
Alt 18-07-2011, 18:08
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von Jiraiya Beitrag anzeigen
da kann ich aber nicht für garantieren das das auch stimmt.!
also die variante die ich habe haut zumindest hin und gibt genau das aus was ich auch geschrieben habe.
Aber nur zufällig, weil PHP die Escape-Sequenzen \A, \h und \g nicht kennt und als Fallback so tut, als wäre es \\A, \\h und \\g. Sobald du aber in Unkenntnis dieses Zusammenhangs nach dem selben Prinzip eine Datenbank namens friends.gdb oder bestsellers.gdb öffnen willst, steht dann "...\friends.gdb" bzw. "...\bestsellers.gdb" dort und PHP wird es im ersten Falle als Steuerzeichen für Papiervorschub und im zweiten als Rückschritt erkennen – und das zu Recht!

Fakt ist, Backslashes die als solche gemeint sind und keine Steuerzeichen darstellen, sollten unbedingt escaped werden. Mehr sag ich dazu jetzt einfach mal nicht. Wenn du der Meinung bist, das ist richtig so, glaub es halt und bleib bei diesem schlechten Stil.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #49 (permalink)  
Alt 18-07-2011, 19:52
Jiraiya
 Registrierter Benutzer
Links : Onlinestatus : Jiraiya ist offline
Registriert seit: Jul 2011
Beiträge: 59
Jiraiya befindet sich auf einem aufstrebenden Ast
Standard

das wollte ich damit garnicht zum audruck bringen. und wieder bin ich dir wirklich dankbar für die aufklärung. und ich hoffe du glaubst mir dass das nicht ironisch oder irgendwas gemeint ist.
ich möchte das programmieren lernen und dass dazu ein schlechter stil am anfang nicht unnormal ist find ich zwar nicht schön aber auch nicht verwunderlich.
aber so kann man ebenso lernen, oder besser gesagt so kann man lernen fehler auszuräumen, denn diese muss man oft erst machen um sie zu erkennen zukönnen.
egal das gehört hier nicht hin find ich, sollte aber mal gesagt werden.
ich bin und werde dir weiterhin dankbar für jede art von ratschlag und hilfe sein.
Mit Zitat antworten
  #50 (permalink)  
Alt 19-07-2011, 10:51
Jiraiya
 Registrierter Benutzer
Links : Onlinestatus : Jiraiya ist offline
Registriert seit: Jul 2011
Beiträge: 59
Jiraiya befindet sich auf einem aufstrebenden Ast
Standard

einen wunderschönen guten Tag.
wie versprochen(befürchtet) hab ich nun ein problem mit dem Update befehl.
doch zuerst mal der quelltext, gößten teils übernommen von der seie vom letzten vollständigen post und abgewandelt

PHP-Code:
<?php
    $database 
= new PDO("firebird:dbname=C:\\Apache2\\htdocs\\guestbook_entries.GDB;host=localhost","SYSDBA""masterkey");
    
$database->setAttribute(PDO::ATTR_ERRMODEPDO::ERRMODE_EXCEPTION);
    
    
$author " ";
    
$time =    0;
    
$text " ";
    
    
$sql "
            UPDATE 
                \"NEW_Table\" 
            SET 
                DATUM = '$time' , TEXT = '$text'
            WHERE {AUTHOR = $author} 
            
          "
;
            
    
$stmn $database->prepare($sql);
    
    
$author " ";
    
$time =    0;
    
$text " ";
    
    
$stmn->bindParam(":author" $author PDO::PARAM_STR);
    
$stmn->bindParam(":time" $time PDO::PARAM_INT);
    
$stmn->bindParam(":text" $text PDO::PARAM_STR);
    
    
$q = array(
            array(
                
"AUTHOR" => "MrX",
                
"TEXT" => "Hallo...",
                
"DATUM" => 123456789
                
),
            array(
                
"AUTHOR" => "MrZ",
                
"TEXT" => "Hallo...Ich bin Z",
                
"DATUM" => 1275554677
            
),
        );
        
        
    foreach(
$q as $query)
    {
        
$author $query["AUTHOR"];
        
$text $query["TEXT"];
        
$time $query["DATUM"];
        
        
$stmn->execute();
    }
    
$stmn -> closeCursor();
    
    
?>
und aml wieder diese wirre fehlermeldung:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: -104 Dynamic SQL Error SQL error code = -104 Token unknown - line 3, column 5 'NEW_Table' ' in C:\Apache2\htdocs\guestebook 2.php:18 Stack trace: #0 C:\Apache2\htdocs\guestebook 2.php(18): PDO->prepare('?????UPDATE ???...') #1 {main} thrown in C:\Apache2\htdocs\guestebook 2.php on line 18

ich habe auch schon die tabelle von dem bild um MrX und MrZ erweitert. jedoch kommt er ja garnicht bis zu diesem punkt.

Geändert von Jiraiya (19-07-2011 um 11:31 Uhr)
Mit Zitat antworten
  #51 (permalink)  
Alt 19-07-2011, 10:57
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

NEW_Table ist mit Sicherheit keine String-Konstante, sondern soll einen Tabellennamen darstellen. Dass du für Tabellen- und Spaltennamen Double-Quotes nehmen musst, sagte ich bereits. Single-Quotes sind in SQL immer String-Begrenzer.

Außerdem bitte Prepared Statements nutzen. Dein Code ist anfällig für SQL Injections.

Edit: Ich sehe gerade, du willst ja selbst Prepared Statements nutzen, allerdings machst du es falsch. Bitte im PHP Handbuch die Beispiele ansehen, wie man Parameter bindet und vor allem welche Arten von Platzhaltern dabei zur Verfügung stehen.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!

Geändert von AmicaNoctis (19-07-2011 um 11:00 Uhr)
Mit Zitat antworten
  #52 (permalink)  
Alt 19-07-2011, 11:04
Jiraiya
 Registrierter Benutzer
Links : Onlinestatus : Jiraiya ist offline
Registriert seit: Jul 2011
Beiträge: 59
Jiraiya befindet sich auf einem aufstrebenden Ast
Standard

ich habe die double quotes hinzugefügt aber genau jetzt mekkert der erst rum wegen string.
Mit Zitat antworten
  #53 (permalink)  
Alt 19-07-2011, 11:09
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Natürlich tut er das, weil du damit den PHP-String beendest. Erinnerst du dich, wozu der Backslash da ist? Das wird hier jetzt langsam zu nem Grundlagenkurs und das ist nicht sinnvoll.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #54 (permalink)  
Alt 19-07-2011, 11:35
Jiraiya
 Registrierter Benutzer
Links : Onlinestatus : Jiraiya ist offline
Registriert seit: Jul 2011
Beiträge: 59
Jiraiya befindet sich auf einem aufstrebenden Ast
Standard

okay ich hab also nun die " wieder mit einem backslash versehen. zuminest laut einer anleitung sollte das helfen. allerdings hat er immer noch ein problem:


Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: -206 Dynamic SQL Error SQL error code = -206 Column unknown {AUTHOR At line 6, column 10 ' in C:\Apache2\htdocs\guestebook 2.php:18 Stack trace: #0 C:\Apache2\htdocs\guestebook 2.php(18): PDO->prepare('?????UPDATE ???...') #1 {main} thrown in C:\Apache2\htdocs\guestebook 2.php on line 18

ist das nun auf die Prepare statement angelegenheit zurückzuführen?
bevor ich weitere unnötige posts mache. wie richtig oder vertrauenswürde ist diese seite nach einem groben drüber schauen?
PDO(PHP Data Objects) | Coding-Bereich

ich mein ich hab bis jetzt das meiste an quelltext von dort. und das haut mir immer wieder diese fehler rein.
Mit Zitat antworten
  #55 (permalink)  
Alt 19-07-2011, 12:01
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Diese Anleitung kann man nehmen, aber du hast es falsch übernommen. Die wirklich ultimative Referenz ist aber immer noch das PHP Handbuch. Dort wird es erklärt, beispielhaft gezeigt und von vielen Nutzern kommentiert.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #56 (permalink)  
Alt 19-07-2011, 12:06
Jiraiya
 Registrierter Benutzer
Links : Onlinestatus : Jiraiya ist offline
Registriert seit: Jul 2011
Beiträge: 59
Jiraiya befindet sich auf einem aufstrebenden Ast
Standard

da stimm ich dir zu. es ist wirklich praktisch. mein problem bei dem wie auch bei dem beispiel bei der seite ist, dass ich durch die ähnlichkeit zwischen feldnamen und variablenamen(Feldname aus tabelle calories und variable calories) aus den beispiel, wahrscheinlich die beschriftung falsch lege. allerdings auch nicht erfahre wie sie richtig ist, da es so zu hauf gemacht wird.

dieses problem zieht sich durch den gesamten quelltext nicht nur für die bindParam... denn da ist es erklärt

Geändert von Jiraiya (19-07-2011 um 12:08 Uhr)
Mit Zitat antworten
  #57 (permalink)  
Alt 19-07-2011, 12:08
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Statt den SQL-Code mit eingebetteten Variablen zu verhunzen, musst du nur die Parameter in der Form :name einbauen. Genau diese Parameter benutzt du dann in bindParam().
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #58 (permalink)  
Alt 19-07-2011, 12:23
Jiraiya
 Registrierter Benutzer
Links : Onlinestatus : Jiraiya ist offline
Registriert seit: Jul 2011
Beiträge: 59
Jiraiya befindet sich auf einem aufstrebenden Ast
Standard

und im array geb ich dann den variablen die dahinterstehenden werte?
wie kommen aber dann die werte in die felder der tabelle?
Mit Zitat antworten
  #59 (permalink)  
Alt 19-07-2011, 13:32
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von Jiraiya Beitrag anzeigen
und im array geb ich dann den variablen die dahinterstehenden werte?
Welches Array? Edit: Achso, ja, sieht ganz so aus. bindParam übernimmt die Variablen immer per Referenz, daher werden spätere Änderungen/Neuzuweisungen berücksichtigt. Näheres erfährst du im Handbuch.

Zitat:
Zitat von Jiraiya Beitrag anzeigen
wie kommen aber dann die werte in die felder der tabelle?
Durch das Binden und den anschließenden Aufruf von execute(). Falls du das nicht meinst, stell bitte konkretere Fragen.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!

Geändert von AmicaNoctis (19-07-2011 um 13:35 Uhr)
Mit Zitat antworten
  #60 (permalink)  
Alt 19-07-2011, 13:50
Jiraiya
 Registrierter Benutzer
Links : Onlinestatus : Jiraiya ist offline
Registriert seit: Jul 2011
Beiträge: 59
Jiraiya befindet sich auf einem aufstrebenden Ast
Standard

die antwort ist vollkommen ausreichend. so hab ich das zumindest schonmal verstanden. allerdings komm ich immer noch nicht vorran. hab jetzt noch mal ne stunde mir die backslash angelegenheit durch gelesen und den unterschied von " und ' und ` und komm trotzdem in dem statement nicht weiter.

könnte ich da nochmal deine Rat erfragen und bitte jetzt etwas expliziter.

momentane fassung:
PHP-Code:
    
    $sql 
"UPDATE `NEW_TABLE`
            SET `DATUM` = :time , `TEXT` = :text
            WHERE `AUTHOR` = :author 
            "
;
    
$stmn =  $databe->prepare($sql):

$author " ";
$time 0;
$text" ";

    
$stmn->bindParam(":author" $author PDO::PARAM_STR);
    
$stmn->1bindParam(":time" $time PDO::PARAM_INT);
    
$stmn->bindParam(":text" $text PDO::PARAM_STR); 

Geändert von Jiraiya (19-07-2011 um 13:53 Uhr)
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
[Einzelauftrag] Dringende Hilfe zu Flash->XML->PHP->>Flash(SWF) PHP_Anfänger Jobgesuche 0 11-05-2005 15:23
brauche hilfe bei FIREBIRD VerNetzer Archiv / Trash 2 17-02-2005 12:20
[Coder gesucht] Hilfe beim Aufbau einer virtuellen Stadt cypresshill Projekthilfe 0 09-08-2003 22:58
Kleines Prob! Dringende Hilfe! dani_o PHP Developer Forum 8 10-07-2003 08:15
Dringende Hilfe - Hidden Field andik2000 HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 5 16-10-2002 12:42

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

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:32 Uhr.