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

Der CSS-Problemlöser

Der CSS-Problemlöser 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 Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 10.10.2003, 14:32:40
kawa1500 kawa1500 ist offline
Anfänger
 
Registriert seit: Sep 2003
Beiträge: 9
Arry aus Datenbank füllen

Hallo an alle,

ich bin noch Anfänger und versuche mich nun auf meinem PC mit der PHP-Programmierung "anzufreunden". Da ich am effektivsten lerne, wenn ich eine Aufgabenstellung habe, habe ich mir halt eine gegeben.

Jetzt stehe ich allerdings vor einem Problem, bei dem ich auch mit intensiven Studieren von Büchern und Foren nicht mehr weiter komme:

Aufgabenstellung:
Aus einer MySQL soll eine Tabelle (Musik) selektiv ausgelesen werden (das klappt auch schon).

Das nun folgende ist der eigentliche "Zahnausbeisser":
?????????????????
Nun sollen drei Felder eines jeden Datensatzes in ein Arry gepackt werden (Nr, Titel, Länge), aus welchem ich dann nach dem Zufallsprinzip 5 Titel auswählen möchte, die dann in der Tabelle wiederum "upgedatet" werden sollen.
?????????????????

Könntet Ihr als "versierte Füchse" mir bitte Hilfestellung geben und einen Lösungsansatz posten --- das wäre wirklich klasse!!!

Danke schon mal im Voraus
kawa1500
Mit Zitat antworten
  #2  
Alt 11.10.2003, 08:45:16
Ben20
Guest
 
Beiträge: n/a
PHP-Code:
//Ausgabe der DB in Array lesen

while($arr = @mysql_fetch_row($queryhandle)) {

$titel[][0] = $arr[0];
$titel[][1] = $arr[1];
...

}

//Array zufällig sortieren
shuffle($titel);

//Wieder in DB updaten
for($i 0$i <= 5$i++) {

mysql_query("UPDATE tabelle SET wert1 = '$title[$i][1]' WHERE id = '$titel[$i][0]');


Mit Zitat antworten
  #3  
Alt 11.10.2003, 11:04:40
kawa1500 kawa1500 ist offline
Anfänger
 
Registriert seit: Sep 2003
Beiträge: 9
-> Ben20

vielen Dank für das Script - das ist wirklich sehr kurz - so kann ich noch nicht programmieren - aber vielleicht kommt das noch!

Aber hier habe ich noch Probs das zu kapieren:

Zitat:
//Ausgabe der DB in Array lesen

while($arr = @mysql_fetch_row($queryhandle)) {

$titel[][0] = $arr[0];
$titel[][1] = $arr[1];
...

}
Also die while-Schleife durchläuft die selektierte DB - sehe ich das richtig?
Die DB wurde vorher etwa so geöffnet:
$DB = new SQLDatabase();
$DB->dbconnect();
$sql= "SELECT nr,titel,laenge FROM Musik LIMIT 15";
$data = $DB->dbselect($sql);

Hättest Du da evtl auch einen "kürzeren" Vorschlag?

Dein "$queryhandle" ist vermutlich mein "$data" ???

Aber das mit der Arry-Zuweisung ist mir ????????????????????????????

Ich versuche mal mir das zu "erklären":
mit "$titel[][0] = $arr[0];" schreibe ich in das Arry "$titel" das Feld "0" > also die Nr.?
mit "$titel[][1] = $arr[1];" schreibe ich in das Arry "$titel" das Feld "1" > also den Titel?
mit "$titel[][2] = $arr[2];" schreibe ich in das Arry "$titel" das Feld "2" > also die Länge?

Beim Sortieren des Arrys "$titel" bleiben die jeweiligen Felder zusammen?

Sehe ich das so richtig????????????


Noch eine Frage zum Schluß:
Muss ich die geöffnete DB wieder manuell schließen (mit close oder so), oder braucht man das nicht?


Bitte erleuchte mich nochmal kurz!!

Vielen Dank und ein schönes WE

Niederbayrische Grüße
kawa1500
Mit Zitat antworten
  #4  
Alt 11.10.2003, 14:11:35
Ben20
Guest
 
Beiträge: n/a
Zitat:
Also die while-Schleife durchläuft die selektierte DB - sehe ich das richtig?
Ja, siehst Du richtig!


Zitat:
Hättest Du da evtl auch einen "kürzeren" Vorschlag?
Nö, kürzer geht nicht. Es sei denn Du arbeitest mit mysql oder mssql dafür gibts eigene Funktionen!

Zitat:
Dein "$queryhandle" ist vermutlich mein "$data" ???
Ja.


Zitat:
Ich versuche mal mir das zu "erklären":
mit "$titel[][0] = $arr[0];" schreibe ich in das Arry "$titel" das Feld "0" > also die Nr.?
mit "$titel[][1] = $arr[1];" schreibe ich in das Arry "$titel" das Feld "1" > also den Titel?
mit "$titel[][2] = $arr[2];" schreibe ich in das Arry "$titel" das Feld "2" > also die Länge?
Genau richtig! $titel ist ein mehrdimensionales Array. Jedes Element besteht aus 3 Elementen (sprich 1 Element ist ein Datensatz)


Zitat:
Beim Sortieren des Arrys "$titel" bleiben die jeweiligen Felder zusammen?

Sollte so sein!


Zitat:
Muss ich die geöffnete DB wieder manuell schließen (mit close oder so), oder braucht man das nicht?
Eigentlich braucht man es nicht machen (PHP beendet die Verbindung am Ende des Scriptes normalerweise). Allerdings ist es sauberer die Verbindung zu beenden sobald man sie nicht mehr braucht.


Ich hoffe ich konnte Dir helfen!
Mit Zitat antworten
  #5  
Alt 11.10.2003, 15:11:27
kawa1500 kawa1500 ist offline
Anfänger
 
Registriert seit: Sep 2003
Beiträge: 9
-> Ben20

ja, Du hast mir schon sehr geholfen, nur komme ich irgendwie mit den Funktionen (siehe "Die DB wurde vorher etwa so geöffnet") nicht klar!

wenn ich Dein Scriptchen da einbaue und entsprechend meinen Variablen abändere ($queryhandle -> $data) passiert irgendwie überhaupt nichts.

Bei meinem Script (ich verändere ein vorhandenes Programm, in dem mehrere Dateien, u.a. auch baseclass.php, per require implementiert werden.
Daraus sind auch die Aufrufe, wie ich die DB öffne (siehe vorheriges posting).

Ich habe aber den Eindruck, dass die beiden Varianten irgendwie nicht zusammen harmonieren??!!??

Könntest Du BITTE Dein Script soweit ergänzen, dass ich sehen kann, wie Du die DB öffnen würdest, die Aufgabenstellung ausführtst (den Teil hast Du ja schon gepostet), und dann die DB wieder schließt?

Das wäre eine super Sache, dann komme ich vielleicht besser dahinter, wie diese komischen Funktionen funktionieren, und kann mich dann entscheiden, ob ich sie verwende oder es manuell (nach Deiner Anleitung) mache.

Ich hoffe, ich mache Dir nicht zu viele Mühe. Danke nochmals!

Niederbayrische Grüße
kawa1500
Mit Zitat antworten
  #6  
Alt 11.10.2003, 22:41:09
Ben20
Guest
 
Beiträge: n/a
Schau mal bei den mySQL Funktionen in der Funktionsreferenz nach, dort sind alle Funktionen die Du brauchst aufgelistet und auch beschrieben:

Datenbankverbindung herstellen:

mysql_connect("Serveradresse", "Username", "Passwort");


Datenbank auswählen:

mysql_select_db("Datenbankname");

(Danach kommt mein bisheriges Script)


Datenbank wieder schließen:

mysql_close();
Mit Zitat antworten
  #7  
Alt 12.10.2003, 11:14:55
kawa1500 kawa1500 ist offline
Anfänger
 
Registriert seit: Sep 2003
Beiträge: 9
-> Ben20

Super - Danke Dir

kawa1500
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 20:30:01 Uhr.


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


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