SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 01.12.2003, 15:39:33
bweichel bweichel ist offline
Junior Member
 
Registriert seit: Jun 2003
Beiträge: 196
Probleme mit String und Integer

Hallo,

ich habe in einer Datenbank Artikelnummern von eine Online Shop stehen. Diese bestehen des öfteren aus Zahlen und Buchstaben. Auf Grund dessen habe ich als Datentyp varchar gewählt.

Nun hab ich das Problem das ich bei der Abfrage wie folgt:

PHP-Code:
SELECT FROM artikel WHERE art_nr '$art_nr' 
nur die Strings, also z. Bsp.: 1029a ausgegeben bekomme. Lasse ich die einfachen Anführungszeichen bei der Abfrage weg, bekomme ich nur die Zahlen, z. Bsp.: 1054.

Ich könnt noch verrückt werden. Hatte damit noch nie Probleme. Wollte nun die Variablen in String umwandeln... mit

PHP-Code:
string $art_nr "$art_nr"
so dass ich beim einsetzen in die Datenbank auf jedenfall einen String hab. Aber auch das funktioniert nicht.

Ich hoffe es kann mir jemand bei meinem Problem helfen. Wahrscheinlich ist es mega simple!

Danke!

Gruß Björn
Mit Zitat antworten
  #2  
Alt 01.12.2003, 16:09:34
chris17 chris17 ist offline
Senior Member
 
Registriert seit: Apr 2003
Alter: 56
Beiträge: 1.236
Hallo Björn,

Wg. Stringumwandlung -> strval()

Zitat:
Nun hab ich das Problem das ich bei der Abfrage wie folgt:

PHP:
SELECT * FROM artikel WHERE art_nr = '$art_nr'

nur die Strings, also z. Bsp.: 1029a ausgegeben bekomme. Lasse ich die einfachen Anführungszeichen bei der Abfrage weg, bekomme ich nur die Zahlen, z. Bsp.: 1054.
Ich steh' bissl auf dem Schlauch. Es stehen also Strings in der DB, und Du bekommst Sie bei der Abfrage auch genauso zurück. Dann ist es doch OK,oder?



Grüsse
Mit Zitat antworten
  #3  
Alt 01.12.2003, 16:27:50
bweichel bweichel ist offline
Junior Member
 
Registriert seit: Jun 2003
Beiträge: 196
hallo chris,

ich habe zuvor mit

PHP-Code:
LOAD DATE LOCAL INFILE... 
die datenbestände aus einer .csv datei in die datenbank eingelesen. in dem ersten feld das in der tabelle artikel steht, werden die artikelnummern angelegt. der inhalt kann eine zahl oder eine kobination aus zahl und buchstaben sein. dementsprechend habe ich dem feld als datentyp varchar gegeben.

jetzt möchte ich auf eine zeile der datenbank zugreifen. dies habe ich mit

PHP-Code:
SELECT FROM artikel WHERE art_nr '$art_nr' 
getan. die anführungszeichen bei der abfrage
PHP-Code:
art_nr '$art_nr' 
benötige ich ja nur, wenn ich nach eine string suche. bei einer zahl könnte ich die anführungszeichen auch weglassen.
aber es funktioniert einfach nicht. er gibt mir keine daten zurück.

das beste und mir völlig unbegreifliche ist: rufe ich über phpmyadmin die zeile die ich auslesen möchte auf, speichere sie genauso ab (ohne auch nur ein buchstabe zu ändern) und starte mein script erneut, so steht die zeile die ich haben will auf dem bildschirm.

ich weiß es ist sehr sehr seltsam, aber irgendetwas scheint mir beim import schiefgegangen zu sein.
Mit Zitat antworten
  #4  
Alt 01.12.2003, 16:38:29
chris17 chris17 ist offline
Senior Member
 
Registriert seit: Apr 2003
Alter: 56
Beiträge: 1.236
Aha, Du bekommst also gar nix aus der DB raus...

Ist der Feldname 'art_nr' im phpMyAdmin genauso geschrieben? (Gross-/Kleinschreibung beachten!)
Mit Zitat antworten
  #5  
Alt 01.12.2003, 16:53:14
bweichel bweichel ist offline
Junior Member
 
Registriert seit: Jun 2003
Beiträge: 196
ja, von der schreibweise ist alles korrekt. und wenn ich die zeile in phpmyadmin aufrufe und anschließend genauso nochmal abspeichere geht es auch. es ist wie von geister hand.
Mit Zitat antworten
  #6  
Alt 01.12.2003, 17:17:00
bweichel bweichel ist offline
Junior Member
 
Registriert seit: Jun 2003
Beiträge: 196
komische weise funktioniert es mit

PHP-Code:
LIKE '%$art_nr' 
das würde doch bedeuten das etwas vor dem eintrag stehen muss. ein leerzeíchen oder sowas, dass phpmyadmin beim speichern weglöscht. nur so kann ich mir erklären dass es bei speichern in phpmyadmin geht.
Mit Zitat antworten
  #7  
Alt 01.12.2003, 17:24:31
chris17 chris17 ist offline
Senior Member
 
Registriert seit: Apr 2003
Alter: 56
Beiträge: 1.236
Yup, klingt logisch.

Es macht einen Unterschied mit welchem Programm die *.csv erstellt wurde. Manche *.csv flutschen, andere klemmen bissl.
Mit Zitat antworten
  #8  
Alt 01.12.2003, 17:59:11
bweichel bweichel ist offline
Junior Member
 
Registriert seit: Jun 2003
Beiträge: 196
also mit dem like gab es auch probleme. ich hab nun mal im phpmyadmin geschaut wie die einen update gestalten. die schreiben jedesmal limit 1 dahinter. das hab ich nun auch gemacht und es geht auf einmal. ist für mich zwar überhaupt nicht logisch, aber wenn ihr mal ein solches prob habt, schreibt einfach
PHP-Code:
LIMIT 1 
dahinter.

und falls jemand mal durchblicken sollte, sagt mir bitte bescheid.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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 aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 08:50:43 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2023, Jelsoft Enterprises Ltd.


© 2001-2023 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt