Zum Inhalt springen

Dukanos

Mitglieder
  • Gesamte Inhalte

    65
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Dukanos

  1. Hallo Leute, irgendwie steh ich gerade auf dem Schlauch. Ich versuche folgende Tabellen in meinen Server einzuspielen, aber ich kriege bei der news-tabelle immer den selben Fehler: #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'PRIMARY KEY(news_id) FOREIGN KEY (fk_user_id) REFERENCES users (user_id) ON ' at line 7 Hier die Tabellen: CREATE TABLE users ( user_id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, username VARCHAR(20) NOT NULL , firstname VARCHAR(20) NOT NULL , name VARCHAR(20) NOT NULL , street VARCHAR(20) NOT NULL , city VARCHAR(20) NOT NULL , zip SMALLINT UNSIGNED NOT NULL , country VARCHAR(20) NOT NULL , email VARCHAR(20) NOT NULL , md5pwd VARCHAR(30) NOT NULL , admin TINYINT UNSIGNED DEFAULT 0 NOT NULL , PRIMARY KEY(user_id) )TYPE=InnoDB; CREATE TABLE news ( news_id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, fk_user_id INTEGER UNSIGNED NOT NULL , date DATETIME NOT NULL , info MEDIUMTEXT NOT NULL , INDEX (fk_user_id) PRIMARY KEY(news_id) FOREIGN KEY (fk_user_id) REFERENCES users (user_id) ON UPDATE CASCADE )TYPE=InnoDB; Könnte mich jemand von der Leitung schubsen auf der ich steh?
  2. Hmmm, ich seh grad, dass image-maps das hergeben würden. Juhu ;-) Trotzdem bin ich für weitere ideen offen. Man lernt ja nie aus :-)
  3. Hallo zusammen, ich hätte gern gewusst, ob es möglich ist irgendwie festzustellen wo genau auf ein Bild geklickt wurde? Also kann ich irgendwie quasi mit einem onclick="uebergebekoords();" die Pixelkoordinaten der Cursor-Spitze weitergeben? Ich habe schon überlegt das Bild zu zerschnippeln und die einzelteile dann in Tabellenzellen zu legen, aber das wird richtig aufwendig. Deswegen wäre ich über eine einfachere Lösung sehr erfreut ^^ Grüße Roland
  4. Um auf der Max-Welle mitzuschwimmen: Wie wärs mit Max Mad ;-) Aber zu dämlichen Namen: Bekannte heißen Reich... und ratet wie der Sohnemann heißt? Genau, Frank!
  5. Ok, ich hab das Objekt neu in index2.php anlegen lassen. Jetzt gehts... versteh zwar nicht warum?!?! Falls jemand dazu was sagen kann. Bitte lasst mich nicht dumm sterben :-)
  6. hmm, nicht richtig instantiiert? Kann das Problem dann daher kommen, dass ich eine 2te Index verwende? Lege das Objekt in der Index.php an: include ("/classes/db/userDBcontroller.php"); session_start(); $_SESSION['userDBcontroller'] = new userDBcontroller(); [/PHP] verwende es aber nachdem ich über ein formular Feld (mit action = "index2.php?content=xyz") die index2.php aufgerufen habe da wieder. in der index2.php wird aber wieder session_start() aufgerufen. Soweit ich das verstanden habe müsste er doch da die Session wieder verwenden oder?
  7. Hallo zusammen, gleich mal vorne weg die Fehlermeldungen: Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in F:\xampp\htdocs\bg\class\db\userDBcontroller.php on line 12 Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in F:\xampp\htdocs\bg\class\db\userDBcontroller.php on line 12 Access denied for user 'ODBC'@'localhost' (using password: NO) Meine Fragen: Woher kommt "ODBC" als Benutzer? Ist das irgendein Default? Hat jemand ne Idee woher der fehler rühren könnte? Zum Code: Ich habe eine controller-Kind-Klasse. In der Elternklasse wird Benutzer, DB, Kennwort etc. festgelegt und eine Verbindung aufgebaut. Die DBcontroller-Klasse wird von einem anderen Controller aufgerufen. Die Objekte wurden in der $_SESSION angelegt (bis auf "father" natürlich :-)) Eltern class father { PROTECTED $db_user; PROTECTED $db_password; PROTECTED $db_server; PROTECTED $db; PROTECTED $affected_rows; PROTECTED $num_rows; PROTECTED STATIC $con; PROTECTED STATIC $queries; PROTECTED STATIC $connections; /****** CONTRUCTOR ****/ public function __construct () { $this->db_server = "localhost"; $this->db_user = "root"; $this->db_password = ""; $this->db = "bg"; if(!is_resource(self::$con)) { self::$con = mysql_connect($this->db_server, $this->db_user, $this->db_password); ++self::$connections; } mysql_select_db($this->db, self::$con) OR die('Fehler beim Verbinden zur Datenbank'); }//end constructor public function prepare($x) { return trim(strip_tags(mysql_real_escape_string($x))); }//end function prepare }//end father [/PHP] [b]Kind[/b] [PHP] require_once ("father.php"); class userDBcontroller extends father { /***** CONSTRUCTOR ******/ public function __contruct () { parent::__construct(); } public function check($user, $pwd) { $result = mysql_query("SELECT username, md5pwd FROM users WHERE username = '".$user."'") or die(mysql_error()); $erg = mysql_fetch_array($result); return $erg; } }//end class Edit: Ich sollte vllt. noch dazu sagen, dass ich die Objekte in der index.php anlegen lasse, der userDBcontroller aber erst aus einer 2ten index2.php aufgerufen wird. Es funktioniert nämlich mit einer anderen Kind-Klasse, die aus index.php angesprochen wird einwandfrei.
  8. Wenn das nicht hilft, dann lausch mal in den PC rein wo das Klacken herkommt. Ich vermute mal Festplatte... Lass mal Scandisk laufen, wenn er über den Bereich kommt, wo SA liegt wird er sich wohl auch aufhängen. Dann heissts Daten sichern ;-)
  9. Genau wird´s wohl nur der Anwalt sagen können. Der wäre jedenfalls der erste, den ich damit belästigen würde. So wie du das beschreibst ist das eine reine Abzocke gewesen und als unwissender Kunde muss ich mich doch auf die Empfehlungen verlassen können. Zu den Teilen (also Router etc.), die kann er natürlich wie alles andere, was man über einen Kaufvertrag erwirbt innerhalb einer angemessenen Frist zurückgeben/umtauschen. Wenn das ganze immer noch nicht funktioniert, dann hat der Dienstleister doch seinen teil der Vertrages nicht erfüllt, ergo kriegt er kein Geld. So würd ich mir das jetz mal ausmalen, wie genau die rechtliche Grundlage ist sollte man den Fachmann fragen (siehe Anwalt). edit: Ich lass mich natürlich gern eines besseren belehren :-) Grüße
  10. Kenne das Problem. Was bei mir geholfen hat ist, das System zurücksetzen lassen. Also Abgesicherter Modus ->Systemwiederherstellung ->Datum nehmen, an dem das Pop-Up noch nicht da war.
  11. Stored Procedures sind in der Überlegung gewesen, aber entspricht imho nicht der Trennung von Logik und Datenspeicherung. Mal davon abgesehen kann man mit trim(), striptag() etc. auch schon einiges abfangen. Und die Anwendung dient nur zur Anschauung, also wird nie einem hacker-angriff ausgesetzt werden :-) Danke trotzdem für den Hinweis
  12. Hallo Leute, ich versuche über ein Suchfeld mit PHP eine Tabelle zu durchsuchen. Die Funktion in der DB-Zugriffsklasse sieht so aus: public function findUser($value) { $result = mysql_query("SELECT * FROM customer WHERE (user_name LIKE %'".$value."'%) OR (first_name LIKE %'".$value."'%) OR (family_name LIKE %'".$value."'%) OR (street LIKE %'".$value."'%) OR (house_no LIKE %'".$value."'%) OR (zip_code LIKE %'".$value."'%) OR (city LIKE %'".$value."'%) OR (creditcard_no LIKE %'".$value."'%) OR (email LIKE %'".$value."'%)") or die (mysql_error()); return $result; } Allerdings wirft er mir immer den Fehler: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%'suchbegriff'%) OR (first_name LIKE %'suchbegriff'%) OR (family_name LIKE %'suchbegriff'%) OR (street LIKE' at line 1 Serverversion ist: 5.0.24a Ich hab nichts dazu gefunden... also jedenfalls nichts, was mir sagt, dass der obige code falsch wäre. Hat jemand nen Tipp? Grüße
  13. Ich hab hier ein kleines Problem mit meinem Drucker (Canon LBP-2900). Ich hab den Fehler begangen und ihn an den USB gehängt, bevor mich die Treiberinstallation dazu aufgefordert hat. Ergo findet die Installation den Drucker nicht und bricht ab. Ich hab schon versucht das "unbekannte USB-Gerät" zu entfernen (also "entfernen"->"abstecken"->"installation starten"->"anstecken"), ändert aber nichts. Irgendwelche Tipps? Danke schonmal Grüße
  14. ok, ich lern gern dazu :-) Mir wurde es mal mal auf die von mir genannte art erklärt... aber mit deiner funktionierts *g* und das reicht mir. Dankeschön
  15. nope, leider nicht setText nimmt nur nen String als Argument. Mit System.out.println(""+y); wandel ich den wert y in nen String und geb ihn setText mit. Aber mal davon abgesehen ändert´s nichts an dem problem :-) Danke trotzdem
  16. Hallo zusammen, vllt könnt ihr mir da ja weiterhelfen. Ich versuche aus dem übergebenen TextField die Zahl auszulesen, um 1 zu erniedrigen und dann zurück ins TextField zu schreiben, allerdings meckert der Compiler beim zurückschreiben mit: The method setText(String) in the type TextField is not applicable for the arguments(void) public void decrement(TextField x) //+1 { int y; try{ y = Integer.parseInt(x.getText()); } catch(Exception e) { System.out.println("Fehler aufgetreten: " + e); return; } y--; x.setText(System.out.println("" + y)); //<-Hier drückt der Schuh return; }//end decrement Irgendwelche ideen? Mir sagt der Fehler jetz nicht so viel :-) Danke schonmal
  17. Vielen Dank auf jeden Fall! Bei mir hauts soweit hin und mehr wollt ich gar nicht! :bimei
  18. ok, ich werd´s mal auf die art versuchen. Danke!
  19. Jepp, die beiden zahlen sollen beliebig lange sein (allerdings im Int-bereich :-)) getrennt mit leerzeichen oder irgeneinem anderen zeichen. z.B. eben "100 200" oder "100 leeeeeerzeichen 200", "100-200", "100xyz200" usw. habt etwas geduld mit einem anfänger ^^
  20. Zu der Sache mit "gets", dessen bin ich mir bewusst, aber mir wurde es in diesem Fall empfohlen, weil scanf auch nicht das gelbe vom Ei wäre :-) char *strcpy(char *deststr, char *srcstr); ich hab mir auch schon überlegt anstatt strcpy einfach nur direkt x = s zu schreiben... dann gibts keine warnungen mehr, allerdings funktionierts immer noch nicht. Ich versuche aus dem eingegebnen string s[], die beiden zahlen herauszufiltern. Zahl 1 soll in x[] gespeichert werden und zahl 2 in x[] und im anschluss sollen sie noch ausgegeben werden. Über Fehleingaben mach ich mir später noch Sorgen :-) (Im späteren verlauf des programms sollen die beiden zahlen die ober- und untergrenze eines Zahlenbereichs angeben bei dem dann jede zahl in seine Primfaktoren zerlegt wird... aber das hat hiermit eigentlich nichts zu tun) Von der Logik her gibt doch die erste while-schleife an, dass er s[] in seiner kompletten länge durchläuft. Dann wird geprüft, ob es sich bei der ersten stelle um eine zahl handelt, wenn ja, dann kopiert er die zahl an der stelle s nach x ansonsten. Dann "else" und die 2te while-schleife: sobald er keine zahl mehr findet soll er den s[] so lange durchlaufen, bis wieder eine zahl kommt und die speichert er dann nach y[] --- habt ihr spontan ne bessere idee wie man´s machen könnte?
  21. Hallo zusammen, gleich mal vorne weg, die Suchfunktion hat nichts ergeben, also steinigt mich nicht gleich, weil ich euch mit sowas vermeidlich simplen langweile ^^ Ich habe das Problem, dass ich 2 zahlen in einer Zeile einlesen soll. Also z.B. "100 200" dumm nur, dass es nicht so ganz hinhaut. Ich hab hier mal das stück des codes, welches das erledigen sollte. Bin ich nur zu blind oder wo is der fehler? ------ int main(void) { int zahl, zahlu, zahlo; int n, i; char s[100], x[100], y[100]; printf("Geben sie 2 Zahlen ein: \n"); gets(s); i=0; /*schleife um die ganze Laenge des Strings zu durchlaufen*/ while(i<= strlen(s)) { /*schleife solange s an der Stelle i eine Zahl ist*/ if(isdigit(s)) { strcpy(x, s); } else { while(s != isdigit(s)) { i++; } strcpy(y, s); } i++; } printf("%c", x); printf("%c", y); ------- danke schonmal! Gruß Dukanos
  22. Öhm, die Radeon kostet 180€ aufpreis!!! Also da würd ich doch lieber nochmal vergleichen. Sie ist zwar die schnellste Karte und hat die beste Ausstattung, aber sie hat einen wirklich mehr als stolzen Preis...
  23. Hast schon ein anderes Netzteil ausprobiert? Ein stärkeres... es kann ja sein, dass dein bisheriges Netzteil zu knapp bemessen ist und das neue Board einfach mehr Strom frisst. Ansonsten ist es wohl das Board oder die CPU, wobei ich es mir nicht vorstellen kann, dass es die CPU durch den höheren FSB geschossen hat.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...