php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 04-03-2005, 20:11
dirty_dirk
 Newbie
Links : Onlinestatus : dirty_dirk ist offline
Registriert seit: Feb 2005
Beiträge: 13
dirty_dirk ist zur Zeit noch ein unbeschriebenes Blatt
Standard php abfrage nur begrenzt möglich

hallo

ich hab eine mysql datenbank mit userdaten und möchte diese über php auslesen und ändern können. das klappt auch, allerdings nur auf sieben felder begrenzt. ich finde den fehler nirgens....
heisst, sobald ich eine weitere abfrage wie telefax oder ähnliches noch hinzufüge, kommt die fehlermeldung dass der datensatz nicht geändert wurde.

hier mal meine drei php's.

abfrage:
PHP-Code:
for ($i=0$i<$num$i++) 

$an mysql_result($res$i"anrede"); 
$nn mysql_result($res$i"name"); 
$fi mysql_result($res$i"firma"); 
$vn mysql_result($res$i"vorname"); 
$ab mysql_result($res$i"abteilung"); 
$te mysql_result($res$i"telefon"); 
$pn mysql_result($res$i"personalnummer"); 
ausgabe:
PHP-Code:
$altan mysql_result($res0"anrede"); 
$altnn mysql_result($res0"name"); 
$altvn mysql_result($res0"vorname"); 
$altfi mysql_result($res0"firma"); 
$altab mysql_result($res0"abteilung"); 
$altte mysql_result($res0"telefon"); 
update:
PHP-Code:
$sqlab "update personen set anrede = '$neuan',"
$sqlab .= "name = '$neunn',"
$sqlab .= "vorname = '$neuvn',"
$sqlab .= "firma = '$neufi',"
$sqlab .= "personalnummer = '$neupn',"
$sqlab .= "abteilung = '$neuab',"
$sqlab .= "telefon = '$neute'"
$sqlab .= "where personalnummer = $oripn"
wer weiss wo der fehler steckt ? vielen dank.... dirk
EDIT:
php-Tag sponsored by asp2php.

Geändert von asp2php (05-03-2005 um 00:12 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 04-03-2005, 20:43
Abraxax
  THE REAL HAXE (Administrator)
Links : Onlinestatus : Abraxax ist offline
Registriert seit: Jul 2002
Ort: neuss.nrw.de
Beiträge: 22.625
Abraxax befindet sich auf einem aufstrebenden Ast
Standard

lesen!

und dann ....

mysql_query()
mysql_error()
mysql_escape_string()
__________________
INFO: Erst suchen, dann posten! | MANUAL(s): PHP | MySQL | HTML/JS/CSS | NICE: GNOME Do | TESTS: Gästebuch | IM: Jabber.org |


Mit Zitat antworten
  #3 (permalink)  
Alt 04-03-2005, 22:02
dirty_dirk
 Newbie
Links : Onlinestatus : dirty_dirk ist offline
Registriert seit: Feb 2005
Beiträge: 13
dirty_dirk ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ok Abraxax,

danke. würde natürlich gerne nur den fehler hier einstellen, wenn ich wüsste wo er ist. leider finde ich ihn nicht und die ausgabe sagt mir nur dass die daten nicht geändert wurden so wie er es auch machen soll. aber warum weiss ich immer noch nicht. das sript hab ich halt so von einer seite und wie schon gesagt, bis zu 7 sachen lassen sich ja auch ändern.

und da ich anfänger bin bringt mir

mysql_query()
mysql_error()
mysql_escape_string()

auch nichts.

danke trotzdem.. dirk
Mit Zitat antworten
  #4 (permalink)  
Alt 04-03-2005, 22:07
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von dirty_dirk
und da ich anfänger bin bringt mir [...] auch nichts.
wenn du dich damit rausreden willst, bitte.
dann kann und will dir hier aber vermutlich niemand weiterhelfen.

der verlinkte artikel beschreibt, wie du mysql_error() anwendest.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #5 (permalink)  
Alt 04-03-2005, 22:17
dirty_dirk
 Newbie
Links : Onlinestatus : dirty_dirk ist offline
Registriert seit: Feb 2005
Beiträge: 13
dirty_dirk ist zur Zeit noch ein unbeschriebenes Blatt
Standard

danke wahsaga

das hat damit gar nichts zu tun. ich hab ordentlich gefragt, hab ordentlich auf die antwort eben gepostet und hab nochmals erklärt dass ich den fehler nicht finde obwohl ich schon mehreres versucht habe. wenn ihr, bevor ihr die leute dann mit solchen kommentaren wie du nun schreibst "ob ich mich rausreden will" ansprichst, wäre eine einfache ausage von leuten die sich damit auskennen doch eigentlich viel mehr wert. doch das ist warscheinlich zu viel verlangt.

tu mir nen gefallen, lösch meinen beitrag und lass es gut sein
Mit Zitat antworten
  #6 (permalink)  
Alt 04-03-2005, 23:22
asp2php
 Banned
Links : Onlinestatus : asp2php ist offline
Registriert seit: Feb 2004
Beiträge: 11.745
asp2php ist zur Zeit noch ein unbeschriebenes Blatt
Standard

@dirty_dirk,

wo hast du Schwierigkeit die genannten Begriffe anzuwenden?
Bsp.
PHP-Code:
$sql "...";
$res mysql_query($sql) or die ('sql: '.$sql.'<br />error: '.mysql_error()); 
wenn ein Fehler da ist, bekommst du auch Meldung. Wenn du mit der Meldung nichts anfangen kannst, dann poste sie hierein. Versuche aber vorher die Meldung zu deuten und das Problem damit zu lösen.
Mit Zitat antworten
  #7 (permalink)  
Alt 04-03-2005, 23:46
Godfrey
 Junior Member
Links : Onlinestatus : Godfrey ist offline
Registriert seit: Jan 2005
Beiträge: 126
Godfrey ist zur Zeit noch ein unbeschriebenes Blatt
Standard

@dirty_dirk

Das Problem ist, dass Du etwas zu wenige Informationen lieferst.

zB. Wie sieht der Select aus, wie machst Du den Update, wie lautet die Fehlermeldung...

asp2php hat Dir einen Ansatz gezeigt mit dem Du Fehler eingrenzen kannst btw. Fehler "sichtbar" machen kannst.

Wenn Du mit diesen Funktionen nichts anfangen kannst findest Du eventuell mal hier Informationen drüber.

Das einzige was mir im Moment auffällt, muss aber kein Fehler sein, ist das hier:
PHP-Code:
$sqlab .= "where personalnummer = $oripn"
Hier hast Du die Hostvariable nicht in '' gesetzt...
Mit Zitat antworten
  #8 (permalink)  
Alt 04-03-2005, 23:52
dirty_dirk
 Newbie
Links : Onlinestatus : dirty_dirk ist offline
Registriert seit: Feb 2005
Beiträge: 13
dirty_dirk ist zur Zeit noch ein unbeschriebenes Blatt
Standard

@asp2php

du, erst mal. danke.... echt. würd sonst nicht fragen wenn ich nicht schon seit lange dran sitzen würde. aber trotzdem. kann euch auch verstehen wenn jeder kommt und am liebsten was gebastelt haben will.

ich hab jetzt mal dieses in mein "update" eingegeben da der rest ja bis dahin eigentlich funktioniert.
PHP-Code:
<?php 

   $db 
mysql_connect('');

   
$res mysql_query($sqlab) or die ('sqlab: '.$sqlab.'<br />error: '.mysql_error());

   
$sqlab "update personen set anrede = '$neuan',";
   
$sqlab .= "name = '$neunn',";
   
$sqlab .= "vorname = '$neuvn',";
   
$sqlab .= "firma = '$neufi',";
   
$sqlab .= "personalnummer = '$neupn',";
   
$sqlab .= "abteilung = '$neuab',";
   
$sqlab .= "telefon = '$neute',";
   
$sqlab .= "telefax = '$neutf',";
   
$sqlab .= "where personalnummer = $oripn";
?>
wenn ich das jetzt absende kommt bei der übergabe der fehler:

sqlab:
error: Query was empty

dabei funktioniert wie gesagt vorher alles. nur das einfügen einer neuen , in meinem fall siebten spalte macht schwierigkeiten.

danke dir....
EDIT:
php-Tag sponsored by asp2php.

Geändert von asp2php (05-03-2005 um 00:10 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 04-03-2005, 23:56
Godfrey
 Junior Member
Links : Onlinestatus : Godfrey ist offline
Registriert seit: Jan 2005
Beiträge: 126
Godfrey ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hmmm, mal ne dumme Frage, in welcher Reihenfolge wird das ausgeführt?
Mit Zitat antworten
  #10 (permalink)  
Alt 05-03-2005, 00:07
dirty_dirk
 Newbie
Links : Onlinestatus : dirty_dirk ist offline
Registriert seit: Feb 2005
Beiträge: 13
dirty_dirk ist zur Zeit noch ein unbeschriebenes Blatt
Standard

@Godfrey

ich habe drei php's, wenn du das meinst.

die erste die mir die db anzeigt un mich auswählen lässt.
die zweite die mir die auswahl aus der db anzeigt
die dritte. die mich fertig macht. also den fehler rausgibt.

den code aller drei varianten hab ich oben gepostet.
habe auch deinen rat bei

$sqlab .= "where personalnummer = $oripn" schon versucht, aber immer noch nichts.

wie gesagt, wenn ich sechs felder abfrage, kein problem... danach. nix mehr...
Mit Zitat antworten
  #11 (permalink)  
Alt 05-03-2005, 00:09
asp2php
 Banned
Links : Onlinestatus : asp2php ist offline
Registriert seit: Feb 2004
Beiträge: 11.745
asp2php ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von dirty_dirk

wenn ich das jetzt absende kommt bei der übergabe der fehler:

sqlab:
error: Query was empty
Klar, weil als du dies aufrufst:
PHP-Code:
 $res mysql_query($sqlab) or die ('sqlab: '.$sqlab.'<br />error: '.mysql_error()); 
ist $sqlab noch garnicht definiert. PHP ist eine Scriptsprache, also Interpreter, d.h. die Abarbeitung geschieht Zeile für Zeile von Anfang bis zum Ende der Datei. Schiebe also die Zeile unter den Block:
PHP-Code:
 $sqlab "update personen set anrede = '$neuan',";
$sqlab .= "name = '$neunn',";
$sqlab .= "vorname = '$neuvn',";
$sqlab .= "firma = '$neufi',";
$sqlab .= "personalnummer = '$neupn',";
$sqlab .= "abteilung = '$neuab',";
$sqlab .= "telefon = '$neute',";
$sqlab .= "telefax = '$neutf',";
$sqlab .= "where personalnummer = $oripn"
dann solltes funz.

BTW: bitte PHP-Tag des Forum für Code verwenden, damit man durch Farbhervorhebung Fehler besser erkennen kann. Danke.
Mit Zitat antworten
  #12 (permalink)  
Alt 05-03-2005, 00:26
dirty_dirk
 Newbie
Links : Onlinestatus : dirty_dirk ist offline
Registriert seit: Feb 2005
Beiträge: 13
dirty_dirk ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hy

ok, sorry wegen des codes. hoffe den beitrag nu richtig einzustellen. jetzt kommt folgender fehler

$db = mysql_connect(');

$sqlab = "update personen set anrede = '$neuan',";
$sqlab .= "name = '$neunn',";
$sqlab .= "vorname = '$neuvn',";
$sqlab .= "firma = '$neufi',";
$sqlab .= "personalnummer = '$neupn',";
$sqlab .= "abteilung = '$neuab',";
$sqlab .= "telefon = '$neute',";
$sqlab .= "telefax = '$neutf',";
$sqlab .= "where personalnummer = $oripn";

$res = mysql_query($sqlab) or die ('sqlab: '.$sqlab.'<br />error: '.mysql_error());

// mysql_db_query("", $sqlab);

$num = mysql_affected_rows();
if ($num>0)
echo "Der Datensatz wurde geändert<p>";
else
echo "Der Datensatz wurde nicht geändert<p>";

mysql_close($db);[PHP]


sqlab: update personen set anrede = 'Herr',name = 'Mark',vorname = 'Ralf',firma = 'Zettel',personalnummer = '6',abteilung = '2',telefon = '0228.9548323',telefax = '025',where personalnummer = 3
error: You have an error in your SQL syntax near 'where personalnummer = 3' at line 1

hmmmmm
Mit Zitat antworten
  #13 (permalink)  
Alt 05-03-2005, 00:27
Godfrey
 Junior Member
Links : Onlinestatus : Godfrey ist offline
Registriert seit: Jan 2005
Beiträge: 126
Godfrey ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hmmm, könnte an dem zu vielen Komma davor liegen. Und eventuell sollte vor der Wherer-Clause noch ein Blank sein.

Ach ja, und wegen den PHP-Tags, wenn Du beim erstellen oben mal beim Editor schaust, da gibt es Buttons, einen mit PHP, verwende den mal bitte für Code.
Mit Zitat antworten
  #14 (permalink)  
Alt 05-03-2005, 00:30
dirty_dirk
 Newbie
Links : Onlinestatus : dirty_dirk ist offline
Registriert seit: Feb 2005
Beiträge: 13
dirty_dirk ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hy

hab ich veruscht mit dem php button. nun noch mal. bin ich denn, also...

PHP-Code:

$db 
mysql_connect('');

$sqlab "update personen set anrede = '$neuan',";
$sqlab .= "name = '$neunn',";
$sqlab .= "vorname = '$neuvn',";
$sqlab .= "firma = '$neufi',";
$sqlab .= "personalnummer = '$neupn',";
$sqlab .= "abteilung = '$neuab',";
$sqlab .= "telefon = '$neute',";
$sqlab .= "telefax = '$neutf',";
$sqlab .= "where personalnummer = $oripn";

$res mysql_query($sqlab) or die ('sqlab: '.$sqlab.'<br />error: '.mysql_error());

mysql_db_query("DB68518"$sqlab);

   
$num mysql_affected_rows();
   if (
$num>0)
      echo 
"Der Datensatz wurde geändert<p>";
   else
      echo 
"Der Datensatz wurde nicht geändert<p>";

   
mysql_close($db); 

Geändert von wahsaga (05-03-2005 um 00:34 Uhr)
Mit Zitat antworten
  #15 (permalink)  
Alt 05-03-2005, 00:39
Godfrey
 Junior Member
Links : Onlinestatus : Godfrey ist offline
Registriert seit: Jan 2005
Beiträge: 126
Godfrey ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von dirty_dirk
...telefax = '025',where personalnummer = 3
error: You have an error in your SQL syntax near 'where personalnummer = 3' at line 1
Du siehst hier genau, dass zwischen dem letzten Feld und der Where-Clause ein Komma steht. Das ist es was MYSQL anmotzt. Hier sollte statt dem , ein Blank sein.

Hmmm, genauer kann ichs wohl nicht mehr erklären...

Was das PHP-Tag betrifft, verwende den Button, gib irgendwas ein und dann hast hier im Fenster die entsprechenden Tags stehen. Dazwischen kannst dann Deinen Code einfügen. Und vor dem Hochstellen kannst mir dem Button Vorschau noch schauen obs OK ist.
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

Software für alle Arten von digitalen Marktplätzen
Software für alle Arten von digitalen MarktplätzenDigitale Marktplätze sind nicht nur im B2C Geschäft seit Jahren etabliert, sondern erfreuen sich mit Kleinanzeigen-Märkten auf lokaler und regionaler Ebene auch im privaten Bereich wachsender Beliebtheit.

09.11.2021 | Berni

Von 0 auf über 2 Mio € Umsatz in weniger als 12 Monaten – wie die Pixelwerker das nur durch SEO geschafft haben
Von 0 auf über 2 Mio € Umsatz in weniger als 12 Monaten – wie die Pixelwerker das nur durch SEO geschafft habenSEO oder SEA? Warum SEO die besserer Methode ist.

01.10.2021 | 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

09.11.2021 Berni | Kategorie: PHP/ Anzeigenmarkt
PHP Newsletter Script SuperWebMailer ansehen PHP Newsletter Script SuperWebMailer

Die webbasierte PHP Newsletter Software SuperWebMailer ist die optimale Lösung zur Durchführung eines erfolgreichen E-Mail-Marketings. Zur Nutzung des PHP Script-Pakets ist eine eigene Webpräsenz/Server mit PHP 5 oder neuer, MySQL 4 oder neuer und die

28.10.2021 mirko_swm | Kategorie: PHP/ Mail
Guestbook Light ansehen Guestbook Light

Das Guestbook Light (kurz: "Gblight") ist ein kinderleichtes Gästebuch in PHP. Durch den Einsatz einer SQLite Datenbank ist es einfach, leicht portabel und schnell. Aufgrund moderner Techniken erfüllt Gblight auch die neuesten Webstandards.

28.10.2021 scripthostingnet | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

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