Demo

Probiere ClanSphere aus und teste daran herum. Demo


Antworten: 3
Seite [1]
matrix142


Beginner




Beiträge: 2
# Thema - 09.03.2011 um 17:53 Uhr
Ich bin derzeit dabei, ein kleines Modul zur Anzeige von TrackMania Servern zu coden.
Allerdings funktioniert bei mir die cs_sql_insert Funktion nicht.

Ausschnitte des Codes:
 
1.
2.
3.
4.
5.
6.
7.
8.
1. / 2. / ... 
  $cs_trackmaniaserver['servername'] = $_POST['servername'];
  
$cs_trackmaniaserver['ip'] = $_POST['ip'];
  
$cs_trackmaniaserver['port'] = $_POST['port'];
  
$cs_trackmaniaserver['show'] = $_POST['show'];

  
$trackmaniaserver_cells array_keys($cs_trackmaniaserver);
  
$trackmaniaserver_save array_values($cs_trackmaniaserver);
  
cs_sql_insert(__FILE__,'trackmaniaserver',$trackmaniaserver_cells,$trackmaniaserver_save);


Wenn ich auf die klassische Art
 
1.
1. / 2. / ... 
 INSERT INTO cs_trackmaniaserver VALUES...

einfüge, funktioniert es.

Wenn dann mal was in der Datenbank steht, ist mir gleich das nächste Problem aufgefallen, nämlich dass wohl auch cs_sql_select nicht funktioniert.

Der Code sieht wiefolgt aus:
 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
1. / 2. / ... 
 $select 'id, name, ip, port, show';
$cs_trackmaniaserver cs_sql_select(__FILE__,'trackmaniaserver',$select,0,$order,$start,$account['users_limit']);
$servers_loop count($cs_trackmaniaserver);

$data['sort']['name'] = cs_sort('trackmaniaserver','manage',$start,0,1,$sort);

for(
$run=0$run<$servers_loop$run++) {
  
$data['trackmaniaserver'][$run]['name'] = cs_secure($cs_trackmaniaserver[$run]['servername']);
  
$data['trackmaniaserver'][$run]['ip'] = cs_secure($cs_trackmaniaserver[$run]['ip']);
  
$data['trackmaniaserver'][$run]['port'] = cs_secure($cs_trackmaniaserver[$run]['port']);
  
$data['trackmaniaserver'][$run]['edit'] = cs_url('trackmaniaserver','edit','id=' $cs_trackmaniaserver[$run]['id']);
  
$data['trackmaniaserver'][$run]['remove'] = cs_url('trackmaniaserver','remove','id=' $cs_trackmaniaserver[$run]['id']);
}

Es erfolgt keine Ausgabe.

Als Anhang noch ein Screenshot der Tabellen-Struktur.

Ich hoffe ihr könnt mir helfen.

Mit freundlichen Grüßen,
matrix142
Dateianhänge:
jpeg sql_tabelle.jpeg (46.38 KiB - 17 mal heruntergeladen )
Inaktiv
Tom08 ClanSphere Team

Supporter
Supporter



Herkunft: Daheim
Beiträge: 2923
# Antwort: 1 - 09.03.2011 um 18:02 Uhr
Der Tabellenname ist auch richtig?
Also inkl. Präfix (z.B. cs_trackmaniaserver)?

Leider kann man das auf deinem Screen nicht sehen.

Also ansonsten sieht dein code eigentlich soweit gut aus.

Was du nochmal probieren kannst: im DEBUG-Modus (http://wiki.csphere.eu/Fehlerdiagnose) arbeiten und dann dort auftauchenden Fehler posten.
bzw. in den error-Logs nachgucken, ob da was geloggt wurde.

Grüße


------------------
Bei Problemen mit Code von mir bitte eine Private Nachricht an mich


Zuletzt editiert von Tom08 ClanSphere Team am 09.03.2011 um 18:03 Uhr (1x Editiert)
Inaktiv
|
matrix142
Thread-Ersteller


Beginner




Beiträge: 2
# Antwort: 2 - 09.03.2011 um 18:23 Uhr
Die Tabelle heißt inkl. Präfix cs_trackmaniaserver. Das Präfix brauch ich ja bei der Funktion nicht mit angeben, richtig?

Im Debug-Modus sind ein paar Fehler angezeigt worden, allerdings keine, welche mit meinem Modul zu tun haben.

Wo finde ich die Error-Logs?

Mit freundlichen Grüßen,
matrix142

EDIT: Ach jetzt versteh ich wie man den Debug-Modus verwendet
Nach dem Absenden des Formulars (sprich beim Einfügen in die Datenbank) erhalte ich folgenden Fehler:
 
1.
1. / 2. / ... 
 SQL -> You have an error in your SQL syntaxcheck the manual that corresponds to your MySQL server version for the right syntax to use near 'show) VALUES ('Test','Test','Test','1')' at line 1

Test bzw. 1 sind die von mir eingegebenen Daten.


Zuletzt editiert von matrix142 am 09.03.2011 um 18:57 Uhr (3x Editiert)
Inaktiv
|
Tom08 ClanSphere Team

Supporter
Supporter



Herkunft: Daheim
Beiträge: 2923
# Antwort: 3 - 10.03.2011 um 17:58 Uhr
Lösung in ICQ:
1. Problem:
Die Spalte hieß "show". Show ist aber eine von MySQL definierte Funktion, darf deswegen in diesem Zusammenhang so nicht verwendet werden.

2. Problem:
Falscher Order-Befehl.

Jetzt funtkionierts ;-)


------------------
Bei Problemen mit Code von mir bitte eine Private Nachricht an mich


Inaktiv
|
Antworten: 3
Seite [1]


Sie müssen sich registrieren, um zu antworten.