Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

Hilfe bei condition....kriegs nicht hin...

Code:                   In Zwischenablage kopieren (nur IE)
1">

Brauche hilfe bei meinem Script! Es will nicht so funzen wie ich will....
wenn $itemid = $spellid nichts in die DB schreiben und sonst die daten die er holt in die DB schreiben...nur irgendwie gehts nicht...habe mal ein echo eingebaut und kriege 20-30 mal wert schon vorhanden mit der selben ID...muss ein logik fehler sein denke ich, kann wer helfen?
Hier gehts zum Orginal Eintrag "Hilfe bei condition....kriegs nicht hin..." im Forum

Antworten

was mir spontan so auffällt:

Code:                   In Zwischenablage kopieren (nur IE)
2">




2.

glaube ich nicht...ich habs auch schon mit 2 gleichzeichen probiert ging auch nicht...also er soll quasi nur alle einträge die schon in der DB sind überspringen, damit das einfügen neuer schneller geht!


3.

Dann gibts eben noch mehr Fehler ...

Ein = ist eine Zuweisung, zwei ein Vergleich, und du willst sicherlich vergleichen !


4.

mhm...ja, aber ich komme ja selber nicht drauf wo da jetz der fehler liegt...weis da keiner rat?


5.

wie wärs wenn Du Dir die entsprechenden Variableninhalte ausgeben läßt ?

Standard-Antwort:
Richtig debuggen
1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
2. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
3. An den Anfang des Scriptes schreibt man die Zeile: error_reporting(E_ALL);
4. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
5. Schritt 4 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
6. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
7. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
8. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.

Die Ausgaben per echo kann man sich ersparen, in dem man einen Debugger benutzt.

Ich versteh schon Deine Frage nicht:

Zitat:
wenn $itemid = $spellid nichts in die DB schreiben und sonst die daten die er holt in die DB schreiben...nur irgendwie gehts nicht..



6.

wieso verstehst du das nicht?
$itemid ist die id aus meiner item datenbank lokal...
$spellid ist die id aus der Datenbank spell_db
so, wenn ich jetzt das script zum 2ten mal ausführe sind ja schon einträge in der Spell_db drinne, die soll er auslesen und wenn schon vorhanden erst gar nicht wieder die neuen daten von der remote seite laden, da schon vorhanden, wenn die ID nicht gefunden wurde lokal soll er die neuen daten von der remote seite laden!
Zwecks beschleunigung des scripts halt!


7.

Du hast ja in $spellid nur einen Wert stehen, da er in der while-Schleife immer überschrieben wird.

ebenso wird $itemid bei jedem Durchgang der while-Schleife überschrieben ...


8.

ja die sollen doch überschrieben werden? für jede itemid aus der DB einen wert holen und in die andere DB eintragen...oder was meinst du jetz?


9.

nach dieser Schleife hast Du nur einen Wert in $spellid:

Code:                   In Zwischenablage kopieren (nur IE)
3">




10.

ich glaube ich verstehe jetz nich, was du meinst lol
es is immer nur 1 wert, die id?
oder meinst jetz, das da immer der gleiche wert @ ID is??
Ich denk ich bin schon zu müde lol...ich hau mich mal hin...

Bin schon auf deine Antwort gespannt ^^


11.

in $adr['Spell_ID'] ist bei jedem Durchgang ein neuer Wert drin.
Die $spellid wird bei jedem Durchgang mit dem neuen Wert gleichgesetzt,
deswegen ist da ja auch ein Gleichheitszeichen...

Ich gebs auf ...


Hier gehts zum Orginal Eintrag "Hilfe bei condition....kriegs nicht hin..." im Forum
 
phpforum.de | Impressum | Handy Bundles